请教各位一下,正则表达式 字符串包含1个或多个手机号?正则写的少,急着用 麻烦大家了。
如果你知道手机号的正则,那么验证是否包含手机号就很简单了。
比如,如果你要用的手机号正则是:1[3|4|5|7|8][0-9]{9}
,
那么只需要在前面加上.*
,后面也加上.*
,就能验证是否包含手机号了。
即:.*1[3|4|5|7|8][0-9]{9}.*
.*
能够匹配任意字符(某些情况下不包含换行符)。
http://blog.csdn.net/sheng_xinjun/article/details/54599790
private static String checkNum(String num){
if(num == null || num.length() == 0){return "";}
Pattern pattern = Pattern.compile("(?<!\d)(?:(?:1[-9]\d{9})"); //包含虚拟运营商号段
Matcher matcher = pattern.matcher(num);
StringBuffer bf = new StringBuffer(64);
while (matcher.find()) {
bf.append(matcher.group()).append(",");
}
int len = bf.length();
if (len > 0) {
bf.deleteCharAt(len - 1);
}
return bf.toString();
}