java使用正则提取字符串中的数字(例如提取短信中的验证码)

使用java正则可以很方便的从字符串中提取符合条件的内容。

1.提取字符串中所有的手机号:

    private void getPhoneNum(String smsBody) {  
            Pattern pattern = Pattern.compile("(13|14|15|18)\\d{9}");  
            Matcher matcher = pattern.matcher(smsBody);  
      
            while (matcher.find()) {  
                System.out.println(matcher.group());  
            }  
        }  
2.在Android开发中,有时候需要提取短信中的验证码(6位数字):
    private String getYzmFromSms(String smsBody) {  
            Pattern pattern = Pattern.compile("\\d{6}");  
            Matcher matcher = pattern.matcher(smsBody);  
      
            if (matcher.find()) {  
                return matcher.group();  
            }  
      
            return null;  
        }  

代码技巧