Python 正则表达式同一模式仅适用于1个结果
我想在使用正则表达式的网页中找到几个Python 正则表达式同一模式仅适用于1个结果,python,regex,Python,Regex,我想在使用正则表达式的网页中找到几个标记,它们具有相同的模式:data tag slug=“NAME”,如下所示(只有一小部分): …category=“rating”data tag id=“40482”data tag name=“safe”data tag slug=“safe”>只需从正则表达式中删除贪婪的*: 重新导入 txt=“”category=“rating”data tag id=“40482”data tag name=“safe”data tag slug=“safe”>c
标记
,它们具有相同的模式:data tag slug=“NAME”
,如下所示(只有一小部分):
…category=“rating”data tag id=“40482”data tag name=“safe”data tag slug=“safe”>只需从正则表达式中删除贪婪的*
:
重新导入
txt=“”category=“rating”data tag id=“40482”data tag name=“safe”data tag slug=“safe”>category=“”data tag id=“42350”data tag name=“solo”data tag slug=“solo”>“”
out=re.findall(r'data-tag-slug=“(\w+”),txt)
打印(输出)
#>[“安全”,“单独”]
于2018年10月2日由
导入reprexpy
打印(reprexpy.SessionInfo())
#>会话信息--------------------------------------------------------------------
#>平台:Darwin-17.7.0-x86_64-i386-64位(64位)
#>Python:3.6
#>日期:2018-10-02
#>包裹------------------------------------------------------------------------
#>reprexpy==0.1.1
@G_M我知道beautifulsoup的存在,但在处理简单匹配时,re通常更快,而且我要处理一百万个网页,所以我真的不想使用beautifulsoup。听起来你已经搞定了。如果你的正则表达式与整个字符串完全匹配,它就会与整个字符串匹配。去掉两端的*
s.@jasonharper没想到会这么简单。。。非常感谢。
...category="rating" data-tag-id="40482" data-tag-name="safe" data-tag-slug="safe"><a cla...
...category="" data-tag-id="42350" data-tag-name="solo" data-tag-slug="solo"><a cla...