正则表达式判断是否是中国电信的号码
private static boolean isNumber(String str) {
String regex = "((0[0-9]{2})-([0-9]{8})|(0[0-9]{3})-([0-9]{7,8}))|((189|180|153|133)[0-9]{8})";
Pattern pattern = Pattern.compile(regex);
Matcher match = pattern.matcher(str);
// match.find()
return match.matches();
}
public static void main(String[] args) {
String str = "0792-12345678";
System.out.println(str+":"+isNumber(str));
str = "0791-1234567";
System.out.println(str+":"+isNumber(str));
str = "029-12345678";
System.out.println(str+":"+isNumber(str));
str = "0281-1234567";
System.out.println(str+":"+isNumber(str));
str = "18907912101";
System.out.println(str+":"+isNumber(str));
str = "18979110001a";
System.out.println(str+":"+isNumber(str));
}