Java 正则表达式提取文本中的身份证号
可以使用 Java 的正则表达式库 (java.util.regex) 来实现提取身份证号。以下是一个示例代码:
import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class IDCardExtractor {
public static void main(String[] args) {
String text = '张三的身份证号码是 11010119800101001X,李四的身份证号码是 32010219820202002X。';
String pattern = '\d{17}[0-9X]';
Pattern r = Pattern.compile(pattern);
Matcher m = r.matcher(text);
while (m.find()) {
System.out.println('身份证号码:' + m.group());
}
}
}
在上述代码中,使用了正则表达式“\d{17}[0-9X]”来匹配身份证号码。其中,“\d”表示数字,“{17}”表示匹配 17 个数字,“[0-9X]”表示最后一位可以是数字 0-9 或字母 X。
在代码中,首先使用了 Pattern.compile 方法将正则表达式编译成 Pattern 对象,然后使用 Matcher 对象的 find 方法在文本中查找匹配的字符串。最后,通过 group 方法获取匹配的字符串并输出。
运行上述代码,将会输出如下结果:
身份证号码:11010119800101001X
身份证号码:32010219820202002X
原文地址: https://www.cveoy.top/t/topic/oFex 著作权归作者所有。请勿转载和采集!