gpt4 book ai didi

python - python 中的正则表达式,不确定我做错了什么

转载 作者:行者123 更新时间:2023-11-28 16:50:58 25 4
gpt4 key购买 nike

我是 Python 的新手,在我决定在这里提问之前,我尽可能多地进行了研究。那么问题来了:

我不确定我的 RegEx 做错了什么。我想试试 re.findall(),所以我想我会写一个小脚本来查找网页上的电话号码。这是我现在拥有的代码。

    import re, urllib
inurl = raw_input("Input a URL: ")
web = urllib.urlopen(inurl)
web.readlines()

numbers = re.findall("/\d{3}.\d{3}.\d{4}/g", web)
for itm in numbers
print itm

不确定发生了什么。对于具有

的行,我不断收到“预期的字符串或缓冲区”错误
    numbers = re.findall(".....", web)

提前致谢。

最佳答案

/\d{3}.\d{3}.\d{4}/g - /../ 部分用于识别其他正则表达式像 Ruby 和 g 这样的语言是一个标志,也不适用于 Python。尝试删除它们并仅使用 \d{3}.\d{3}.\d{4}

此外,我认为您希望在 findall 中使用输出/响应而不仅仅是 Web,这就是为什么您会看到预期的字符串或缓冲区。您还应该删除刚刚执行 web.readlines()

的行

所以你可能想要做的是这样的:

numbers = re.findall("\d{3}.\d{3}.\d{4}", web.read())

关于python - python 中的正则表达式,不确定我做错了什么,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7720941/

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