条件:找出 137 或者 159 开头的11位手机号码 String phoneNumber= "所有的手机号码是:sdfsdf234234137565137342159805654569445234sd";
Pattern p1 = Pattern.compile("(^137|^159\\d{11})");
Matcher m1 = p1.matcher(phoneNumber);
if(m1.find()){
System.out.println("提取的手机号码是:"+m1.group());
}我想把其中符合条件的都提取出来,应该如何改我的程序啊?
请各路高手帮忙看看!
我不知道我错在哪里啊?
Pattern p1 = Pattern.compile("(^137|^159\\d{11})");
Matcher m1 = p1.matcher(phoneNumber);
if(m1.find()){
System.out.println("提取的手机号码是:"+m1.group());
}我想把其中符合条件的都提取出来,应该如何改我的程序啊?
请各路高手帮忙看看!
我不知道我错在哪里啊?
String phoneNumber= "所有的手机号码是:sdfsdf234234137565137342159805654569445234sd";
Pattern p = Pattern.compile("(137\\d{8}|159\\d{8})");
Matcher m = p.matcher(phoneNumber);
while(m.find()){
System.out.println("提取的手机号码是:" + m.group());
}
String phoneNumber= "所有的手机号码是:sdfsdf234234137565137342159805654569445234sd";
Pattern p1 = Pattern.compile("137\\d{8}|159\\d{8}");
Matcher m1 = p1.matcher(phoneNumber);
while(m1.find()){
System.out.println("提取的手机号码是:"+m1.group());
}
String phoneNumber= "所有的手机号码是:sdfsdf234234137565137342159805654569445234sd";
Pattern p1 = Pattern.compile("(137|159)\\d{8}");
Matcher m1 = p1.matcher(phoneNumber);
int start = 0;
while(m1.find(start)){
System.out.println("提取的手机号码是:"+m1.group());
start = m1.start() + 3;
}
Pattern p1 = Pattern.compile("(137|159)[0-9]{8}");
Matcher m1 = p1.matcher(phoneNumber);
while (m1.find()) {
System.out.println("提取的手机号码是:" + m1.group());
}