正则表达式(身份证)
/**
* 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("身份证无效,不是合格的身份证号码");}}
}
本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!
