正则表达式判断是否是中国电信的号码

正则表达式判断是否是中国电信的号码
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));
  }

posted @ 2017-06-14 09:55  小宁同学柠檬茶  阅读(654)  评论(0编辑  收藏  举报