运用正则表达式来检验从键盘输入的手机号是否合法
发布时间:2020-12-14 06:08:21 所属栏目:百科 来源:网络整理
导读:java的第一次实训课,在编写了两个简单的程序后,我表示非常开心呐。但是呢,做到第三题时,我有点懵。因为我从来没有听过“正则表达式”!!! 所以,我自闭了一会儿。。。。。。 但是,代码还是要敲的。 题目:运用正则表达式来检验从键盘输入的手机号是否
java的第一次实训课,在编写了两个简单的程序后,我表示非常开心呐。但是呢,做到第三题时,我有点懵。因为我从来没有听过“正则表达式”!!! 所以,我自闭了一会儿。。。。。。 但是,代码还是要敲的。 题目:运用正则表达式来检验从键盘输入的手机号是否合法 关键语句:standard ="^((13[0-9])|(14[5,7,9])|(15([0-3]|[5-9]))|(166)|(17[0,1,3,5,6,8])|(18[0-9])|(19[8|9]))\d{8}$"; 其实检验手机号是否合法的正则表达式还经历过这样的:"^1[3|4|5|7|8][0-9]d{4,8}$" -----因为通信网络的发展,这个已经过时了,不再满足需求 话不多说,直接上代码了--->> 1 //利用正则表达式来检查用户输入的手机号是否正确 2 package test; 3 4 import java.util.Scanner; 5 6 public class TestphoneNum { 7 public void checkNum(String mobile) { 8 //正则表达式如下,适用于联通 电信 移动 手机号 9 String standard ="^(13[0-9]|14[579]|15[0-3,5-9]|16[6]|17[0135678]|18[0-9]|19[89])d{8}$"; 10 //比较类里面的数值是否相等时,用equals()方法; 11 if (mobile.equals(null)) { 12 System.out.println("手机号码不能为空!"); 13 } 14 //正则表达式中的matches方法,是用来检测字符串是否与给定的正则表达式匹配 15 else if (mobile.matches(standard)) { 16 System.out.println("您的手机号输入正确!"); 17 } else { 18 System.out.println("您输入的手机号不正确!"); 19 } 20 } 21 22 public static void main(String[] args) { 23 System.out.println("请输入您的手机号:"); 24 //要想使用系统中已定义好的Scanner类,须在包名下导入java.util.Scanner 25 Scanner input = new Scanner(System.in); 26 String str = input.next(); 27 TestphoneNum str1 = new TestphoneNum(); 28 str1.checkNum(str); 29 input.close(); 30 } 31 } 以上是4.4号的打卡,由于一些自身的原因,导致晚点上传,今天继续在家敲代码,加油!!! 感谢学长与学姐的指点!嘻嘻 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |