正则表达式(身份证)

/**

 * java 正则表达式校验身份证号码

 *身份证校验:

1、正确数据-输入15位身份证号,例如320311770706001

2、正确数据-输入18位身份证号且只有数字,例如130701199310302288

3、正确数据_输入18位身份证号且最后一位为X,例如52030219891209794X

4、错误数据_输入18位身份证号且最后一位为除X外的字母,例如52030219891209794Y

5、错误数据-输入数字少于15位,例如32031177070600

6、错误数据-输入数字多于15位少于18位,例如3203117707060011

7、错误数据-输入数字少于18位,例如52030219891209794

8、错误数据-输入数字多于18位,例如5203021989120979412

9、错误数据-身份证号中含有字母,例如52030219aaaaddd8912

10、错误数据-输入数据中含有特殊字符,例如520@#¥%&×302198912

11、错误数据-输入为空

12、错误数据-输入为空格

*/

import java.util.Scanner;public class test{public static void main(String[] args) {//输入身份证号Scanner intput = new Scanner(System.in);System.out.println("请输入身份证号码");String idNum = intput.next();//定义身份证模式规范String s = "\\d{15}(\\d{2}[0-9xX])?";System.out.println(idNum.matches(s));if (idNum.matches(s)) {System.out.println("身份证有效");} else {System.out.println("身份证无效,不是合格的身份证号码");}}
}


本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!

相关文章

立即
投稿

微信公众账号

微信扫一扫加关注

返回
顶部