From 6a0aac55a3616b23168895112fc7f37e5be91320 Mon Sep 17 00:00:00 2001 From: caihaohan Date: Tue, 28 Nov 2023 20:42:47 +0800 Subject: [PATCH] =?UTF-8?q?feat:=20=E8=80=81=E6=B3=95=E8=A7=84=E5=AF=BC?= =?UTF-8?q?=E5=85=A5=E5=BA=8F=E5=88=97=E5=8F=B7=E6=94=AF=E6=8C=81=E8=8B=B1?= =?UTF-8?q?=E6=96=87=E5=AD=97=E6=AF=8D?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../enterprise/util/EnterpriseStandardUtil.java | 16 +++++++++------- 1 file changed, 9 insertions(+), 7 deletions(-) diff --git a/laws-modules/src/main/java/com/jero/modules/laws/enterprise/util/EnterpriseStandardUtil.java b/laws-modules/src/main/java/com/jero/modules/laws/enterprise/util/EnterpriseStandardUtil.java index 5a22af52..4e9eeb87 100644 --- a/laws-modules/src/main/java/com/jero/modules/laws/enterprise/util/EnterpriseStandardUtil.java +++ b/laws-modules/src/main/java/com/jero/modules/laws/enterprise/util/EnterpriseStandardUtil.java @@ -157,11 +157,13 @@ public class EnterpriseStandardUtil { public static Map 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 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);