zbparse/flask_app/test_case/test_正则表达式2.py

24 lines
894 B
Python
Raw Permalink Normal View History

2025-01-09 17:24:02 +08:00
import regex
2024-12-24 10:21:27 +08:00
2025-01-09 17:24:02 +08:00
# 新的正则表达式
begin_pattern = regex.compile(
r'^第[一二三四五六七八九十百千]+(?:章|部分).*(?:投标人?|磋商|谈判|供应商|应答人|比选申请人).*须知+|'
r'(?<!见\s*)(?<!与\s*)(?<!"\s*)(?<!"\s*)(?<!"\s*)(?:投标人?|磋商|谈判|供应商|应答人|比选申请人).*须知前附表\s*$',
regex.MULTILINE
)
2024-12-24 10:21:27 +08:00
2025-01-09 17:24:02 +08:00
# 测试文本
test_texts = [
"第一章 投标人 须知", # 匹配
"第九章 磋商 123 须知", # 匹配
"第十章 谈判一些内容须知", # 匹配
"第二章 投标人123abc须知前附表", # 匹配
"第一部分 供应商\n须知", # 不匹配,因为有换行
"第八章 其他内容须知" # 不匹配
]
2024-12-24 10:21:27 +08:00
2025-01-09 17:24:02 +08:00
# 测试匹配
for idx, text in enumerate(test_texts):
match = begin_pattern.search(text)
print(f"Test case {idx + 1}: {'Matched' if match else 'Not Matched'}")