用正则表达式判断手机号的合法性

创建Eval类,在main()方法使用正则表达式来判断字符串text是否为合法的手机号。

运行结果:

Eclipse中运行Eval类,结果如图1所示。

  1  Eval类的运行结果

解题关键:

l         手机号由11位数字组成,以1315开头,其中以15开头的有150159

l         String类的matches()用于验证字符串是否匹配正则表达式。

答案:

Eval.java文件代码如下:

public class Eval { // 新建类

   public static void main(String[] args) { // 主方法

      String regex = "^13\\d{9}|15[09]\\d{8}$";

      String text = "13000000000";

      if (text.matches(regex)) {

         System.out.println(text + " 是合法的手机号");

      }else{

         System.out.println(text + " 不是合法的手机号");

      }

   }

}