获取验证码的正则表达式

[java]  view plain  copy
  1.     /**  
  2.  * 从短信字符窜提取验证码  
  3.  * @param body 短信内容   
  4.      * @param YZMLENGTH  验证码的长度 一般6位或者4位  
  5.  * @return 接取出来的验证码  
  6.  */    
  7. public static String getyzm(String body, int YZMLENGTH) {    
  8.     // 首先([a-zA-Z0-9]{YZMLENGTH})是得到一个连续的六位数字字母组合    
  9.     // (?<![a-zA-Z0-9])负向断言([0-9]{YZMLENGTH})前面不能有数字    
  10.     // (?![a-zA-Z0-9])断言([0-9]{YZMLENGTH})后面不能有数字出现    
  11.       
  12.       
  13. //  获得数字字母组合    
  14. //    Pattern p = Pattern   .compile("(?<![a-zA-Z0-9])([a-zA-Z0-9]{" + YZMLENGTH + "})(?![a-zA-Z0-9])");    
  15.       
  16. //  获得纯数字  
  17.   Pattern p = Pattern.compile("(?<![0-9])([0-9]{" + YZMLENGTH+ "})(?![0-9])");  
  18.       
  19.     Matcher m = p.matcher(body);    
  20.     if (m.find()) {    
  21.         System.out.println(m.group());    
  22.         return m.group(0);    
  23.     }    
  24.     return null;    
  25. }  

猜你喜欢

转载自blog.csdn.net/qq_40848783/article/details/79983790
今日推荐