如何按XXX-XX-XXXX格式规则从文本文件提取匹配字符串?
解决方法
用正则表达式匹配目标格式
你要提取的XXX-XX-XXXX格式,对应的正则表达式可以写成:\b[A-Z0-9]{3}-[A-Z0-9]{2}-[A-Z0-9]{4}\b,各部分含义:
\b:匹配单词边界,避免匹配更长字符串的冗余部分[A-Z0-9]{3}:匹配3个大写字母或数字-:匹配固定的连字符分隔符[A-Z0-9]{2}:匹配2个大写字母或数字[A-Z0-9]{4}:匹配4个大写字母或数字
代码示例(Python)
假设用Python处理文本文件,可参考以下代码:
import re # 读取文本文件内容 with open('your_file.txt', 'r') as f: content = f.read() # 定义正则匹配模式 pattern = r'\b[A-Z0-9]{3}-[A-Z0-9]{2}-[A-Z0-9]{4}\b' # 查找所有符合格式的子串 matches = re.findall(pattern, content) # 输出结果(取第一个匹配项对应你的预期输出) if matches: print(f"'{matches[0]}'") else: print("未找到符合格式的字符串")
测试验证
用你提供的示例文本:
B311-SG-1700-ASJND83-ANSDN762 BAKSJD873-JAN-1293
运行代码后会输出'B311-SG-1700',与预期一致。
灵活调整
- 如果字符串包含小写字母,将正则中的
[A-Z0-9]改为[A-Za-z0-9]即可 - 若需仅匹配行开头的符合格式子串,可将正则改为
^[A-Z0-9]{3}-[A-Z0-9]{2}-[A-Z0-9]{4}(^用于匹配行开头)
内容的提问来源于stack exchange,提问作者Jeza
相关产品推荐
相关产品推荐

