正则表达式匹配手机号码 写一个正则表达式,可以匹配尾号5连的手机号。规则: 第1位是1,第二位可以是数字3458其中之一,后面4位任意数字,最后5位为任意相同的数字。
- 1[3458]\d{4}(\d)\1{3}
- 1 匹配 1
- [3458] 匹配 3 4 5 8 任意一个
- \d{4} 匹配 4个0-9
- (\d) 匹配 0-9并捕获到\1
- \1{4} 匹配 4个之前捕获到的\1
- public class Test9 {
- /**
- * 写一个正则表达式,可以匹配尾号5连的手机号。规则: 第1位是1,第二位可以是数字3458其中之一,后面4位任意数字,最后5位为任意相同的数字。
- * 例如:18601088888、13912366666
- * @param args
- */
- public static void main(String[] args) {
- String regex="[1][3-5[8]][0-9]{4}(\\d)\\1{4}";
- Scanner scanner=new Scanner(System.in);
- boolean flag=true;
- System.out.println("请输入您的电话号码");
- while(flag)
- {
- String a=scanner.next();
- if(a.toCharArray().length==11)
- {
- if(a.matches(regex))
- {
- flag=false;
- System.out.println("匹配成功!");
- }else
- {
- System.out.println("不匹配请从新输入:");
- }
- }else{
- System.out.println("位数不过,或着超出");
- }
- }
- }
- }
版权声明:本文为tianshidechibang234原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。