文本中是否包含手机号 正则表达式

请教各位一下,正则表达式 字符串包含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();
}