加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

运用正则表达式来检验从键盘输入的手机号是否合法

发布时间: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号的打卡,由于一些自身的原因,导致晚点上传,今天继续在家敲代码,加油!!!

感谢学长与学姐的指点!嘻嘻

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读