基线:全量源码首提(D1 版本控制落地,含第一轮优化 B1-B4/A1/A4/缩放修复)
This commit is contained in:
@@ -0,0 +1,29 @@
|
||||
# -*- coding: utf-8 -*-
|
||||
"""用 C# 同款拆分规则验证正泰格式的型号规格拆分(拆规格与名称)。"""
|
||||
import re
|
||||
|
||||
def 拆(原始):
|
||||
# 找最长连续中文段(>=2字)
|
||||
best = None
|
||||
for m in re.finditer(r'[\u4e00-\u9fa5]{2,}', 原始):
|
||||
if best is None or len(m.group()) > len(best.group()):
|
||||
best = m
|
||||
if best:
|
||||
名称 = best.group()
|
||||
规格 = (原始[:best.start()] + ' ' + 原始[best.end():]).strip()
|
||||
规格 = re.sub(r'\s+', ' ', 规格).strip(' -/')
|
||||
return 规格, 名称
|
||||
return 原始.strip(), ''
|
||||
|
||||
cases = [
|
||||
"CA1-100/4300B/40A 断路器",
|
||||
"CH1-63C16/1P",
|
||||
"DJMB2 220/36 0.3kVA",
|
||||
"RT12-63/4P 40A",
|
||||
"CM3-63M/33002/50A 塑壳断路器",
|
||||
"LAM-C40/4P",
|
||||
"CH1L-32C20/1N 剩余电流断路器",
|
||||
]
|
||||
for c in cases:
|
||||
规格, 名称 = 拆(c)
|
||||
print(repr(c), '→ 规格:', repr(规格), ' 名称:', repr(名称))
|
||||
Reference in New Issue
Block a user