在regex-python中处理冲突

2024-04-26 00:50:08 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在创建一个脚本,从电子邮件帐户中提取跟踪号码。跟踪可以由ups、fedex或usps提供。我遇到了一个问题,UPS regex正在获取一个USPS跟踪号

例如,我的UPS regex是:

\b(1Z ?[0-9A-Z]{3} ?[0-9A-Z]{3} ?[0-9A-Z]{2} ?[0-9A-Z]{3,4} ?[0-9A-Z]{3,4} ?[0-9A-Z]|[\dT]\d\d\d ?\d\d\d\d ?\d\d\d|\d\d\d ?\d\d\d ?\d\d\d|\d{22,34}|\d{18}|MI[0-9]{6}[0-9A-Z]{1,22})\b

而我的USPS正则表达式是:

\b(9[0-9]{3} ?[0-9]{4} ?[0-9]{4} ?[0-9]{4} ?[0-9]{4} ?[0-9]{2})\b

两者匹配的示例:9405436252332194262342

我不知道如何处理这场冲突。有人有什么建议吗


Tags: 脚本示例电子邮件dt帐户建议regex号码