package org.springblade.modules.test4j.util;
|
|
import java.util.regex.Matcher;
|
import java.util.regex.Pattern;
|
|
/**
|
* 身份证信息读取工具
|
*/
|
public class Test4jUtil {
|
/**
|
* 去掉字符串里的非中文字符
|
*
|
* @param inputString 字符串
|
* @return 中文字符串
|
*/
|
public static String removeNonChinese(String inputString) {
|
// 匹配非汉字字符的正则表达式
|
String regex = "[^\u4E00-\u9FA5]";
|
Pattern pattern = Pattern.compile(regex);
|
Matcher matcher = pattern.matcher(inputString);
|
// 替换非汉字字符为空格
|
return matcher.replaceAll("");
|
}
|
|
/**
|
* 提取出生日期
|
*
|
* @param inputString 字符串
|
* @return 出生日期
|
*/
|
private static String extractBirthDate(String inputString) {
|
// 匹配日期格式的正则表达式
|
String regex = "(\\d{4}年\\d{2}月\\d{2}日)";
|
Pattern pattern = Pattern.compile(regex);
|
Matcher matcher = pattern.matcher(inputString);
|
// 提取匹配到的日期
|
if (matcher.find()) {
|
return matcher.group(1);
|
} else {
|
return "未找到日期";
|
}
|
}
|
|
/**
|
* 截取指定字符
|
*
|
* @param inputString 字符串
|
* @param indexStart 开始Index
|
* @return 截取的字符串
|
*/
|
public static String getStringByIndex(String inputString, int indexStart) {
|
return getStringByIndex(inputString, indexStart, -1);
|
}
|
|
/**
|
* 截取指定字符
|
*
|
* @param inputString 字符串
|
* @param indexStart 开始Index
|
* @param size 截取的字符个数
|
* @return 截取的字符串
|
*/
|
public static String getStringByIndex(String inputString, int indexStart, int size) {
|
// 去除字符串两端的空白字符
|
String trimmedString = inputString.trim();
|
// 将字符串以空白字符分割
|
StringBuilder res = new StringBuilder();
|
String[] words = trimmedString.split("\\s+");
|
int length = words.length;
|
int contentSize = indexStart + size;
|
if (length > indexStart) {
|
int index = length;
|
if (size > 0 && length > contentSize) {
|
index = contentSize;
|
}
|
for (int i = indexStart; i < index; i++) {
|
res.append(words[i]);
|
}
|
}
|
return res.toString();
|
}
|
|
|
|
}
|