34 lines
873 B
Python
Raw Normal View History

2024-08-29 16:37:09 +08:00
import re
def extract_key_value_from_line(line):
# 更新正则表达式以处理带序号和不带序号的情况
pattern = r'^((?:\d+(?:\.\d+)*\.?\s*)?)(.+?)\s*/\s*$'
match = re.match(pattern, line)
2024-09-03 09:36:18 +08:00
if match:
# 获取键名,并去除多余的空格
key = match.group(2).strip()
# 设置值为"无"
value = ""
return {key: value}
return {}
# 测试函数
def test_extraction():
test_cases = [
"1.1.6 设计人 /",
"3.4 某个键名:/",
"5. 另一个键名 /",
"1.2.3.4 复杂序号键名:/",
"6.简单键名/",
"不带序号的行:/",
"纯文本/",
]
2024-08-29 16:37:09 +08:00
for case in test_cases:
result = extract_key_value_from_line(case)
print(f"Input: {case}")
print(f"Result: {result}\n")
2024-08-29 16:37:09 +08:00
# 运行测试
test_extraction()