feat: 老法规导入序列号支持英文字母
This commit is contained in:
+9
-7
@@ -157,11 +157,13 @@ public class EnterpriseStandardUtil {
|
||||
public static Map<String, String> splitStandardNumber(String standardNumber) {
|
||||
// 定义多个正则表达式来匹配不同的标准号格式
|
||||
String[] regexPatterns = {
|
||||
"([A-Z]+)/([A-Z]+)\\s+([0-9A-Z])(\\d+(?:\\.\\d+)?)[-—](\\w+)",
|
||||
// "([A-Z]+)\\/([A-Z]+)\\s+([0-9A-Z])(\\d+(?:\\.\\d+)?)[-—](\\w+)", // 序列号是数字的情况
|
||||
// "([A-Z]+)/([A-Z]+)\\s+([0-9A-Z])(\\([0-9A-Z]+)\\[-—](\\w+)", // 序列号数字英文混合的情况
|
||||
// "([A-Za-z]{1,2})[-\\/]([A-Za-z]{1,2})\\s+([A-Za-z0-9]{1,3})[-—–]?(\\d{4,5}(?:\\.\\d+)?)[-—–]([A-Za-z0-9]+)", // 下面四种综合的正则
|
||||
// "([A-Za-z]{1,2})\\/([A-Za-z]{1,2}) (\\d)(\\d{4})-([A-Za-z0-9]+)",// 正常格式
|
||||
// "([A-Za-z]{1,2})\\/([A-Za-z]{1,2})\\s+([0-9A-Z])(\\d+(?:\\.\\d+)?)[-—](\\w+)",// 正常格式
|
||||
// "([A-Za-z]{1,2})\\/([A-Za-z]{1,2}) (\\d)(\\.\\d+)?-([A-Za-z0-9]+)", // 带小数的格式
|
||||
// "([A-Za-z]{1,2})\\/([A-Za-z]{1,2})\\s+([A-Za-z0-9])-([A-Za-z0-9]+)",
|
||||
"([A-Z]+)\\/([A-Z]+)\\s+([0-9A-Z])([0-9A-Za-z]+(?:\\.[0-9A-Za-z]+)?)[-—](\\w+)"
|
||||
};
|
||||
|
||||
Map<String, String> map = new HashMap<>();
|
||||
@@ -170,11 +172,11 @@ public class EnterpriseStandardUtil {
|
||||
Pattern pattern = Pattern.compile(regex);
|
||||
Matcher matcher = pattern.matcher(standardNumber);
|
||||
if (matcher.find()) {
|
||||
String esCode = matcher.group(1);
|
||||
String eNameCode = matcher.group(2);
|
||||
String sCategoryCode = matcher.group(3);
|
||||
String sequenceNumber = matcher.group(4);
|
||||
String yearNum = matcher.group(5);
|
||||
String esCode = matcher.group(1).trim();
|
||||
String eNameCode = matcher.group(2).trim();
|
||||
String sCategoryCode = matcher.group(3).trim();
|
||||
String sequenceNumber = matcher.group(4).trim();
|
||||
String yearNum = matcher.group(5).trim();
|
||||
|
||||
map.put(FieldCommon.ENTERPRISE_STANDARD_CODE, esCode);
|
||||
map.put(FieldCommon.ENTERPRISE_NAME_CODE, eNameCode);
|
||||
|
||||
Reference in New Issue
Block a user