gpt4 book ai didi

python - 为什么我的正则表达式与我需要的电话号码不匹配?

转载 作者:太空宇宙 更新时间:2023-11-03 14:51:24 24 4
gpt4 key购买 nike

我的书“用 Python 自动化无聊的事情”有这个复杂的正则表达式,它试图在给定的字符串中获取电话号码:

((\d{3}|\(\d{3}\))?(\s|-|\.)?\d{3}(\s|-|\.)\d{4}(\s(ext|x|ext.)\s*\d{2,5})?)

222-666-7777 分机 322 是我认为应该与正则表达式匹配但不匹配的电话号码。我使用的是 regex101,这里是我的正则表达式的链接:https://regex101.com/r/OIMqNB/1 .有人可以告诉我哪里出错了吗?

最佳答案

正则表达式是正确的,您刚刚添加了一个换行符,将正则表达式分成两部分:

((\d{3}|\(\d{3}\))?(\s|-|\.)?\d{3}(\s|-|\.)\d{4}
(\s*(ext|x|ext.)\s*\d{2,5})?)

只需在 {4} 之后点击 canc 并将其放在您的 regex101 链接中的同一行,您就会看到它按预期工作。

((\d{3}|\(\d{3}\))?(\s|-|\.)?\d{3}(\s|-|\.)\d{4}(\s*(ext|x|ext.)\s*\d{2,5})?)

这是使用视觉助手时的常见错误,每当您看到一些奇怪的行为时,只需仔细检查您的正则表达式是否在同一行

关于python - 为什么我的正则表达式与我需要的电话号码不匹配?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45528407/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com