测试
![在这里插入图片描述](https://img-blog.csdnimg.cn/e5e7a6fab41e4e49818e5c44b21e999e.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3lhbmczNTM5MzM1NDY=,size_16,color_FFFFFF,t_70)
代码
import org.apache.commons.lang.StringUtils;
import java.util.ArrayList;
import java.util.List;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class PatternUtil {
public static List<String> doWithStr2number(String s) {
List<String> doWithNumber = new ArrayList<String>();
if(StringUtils.isEmpty(s)) {
return doWithNumber;
}
Pattern pattern = Pattern.compile("(((13[0-9])|(14[0-9])|(15[0-9])|(17[0-9])|(18[0-9]))\\d{8})|((\\d{3}-\\d{7,8}|\\d{4}-\\d{7,8}))");
Matcher matcher = pattern.matcher(s);
while (matcher.find()) {
doWithNumber.add(matcher.group());
System.out.println("识别出的电话号码:" + matcher.group());
}
return doWithNumber;
}
public static void main(String[] args) {
String s = "发的发可烦021-67863980挖了几个022-6764398dai18727789678FSADFAnkr";
System.out.println("原始字符串:" + s);
doWithStr2number(s);
}
}