2024-05-01 18:17:33 发布
网友
我怎样才能把标签从名单上去掉:
['</span>A walk in the park<span class="html-tag"]
我设法用(r'(?<=</span>)[^>]+')删除了第一个标记,但不知道如何删除第二个标记。我知道正则表达式不是处理标记的方法,但我只是想弄清楚这一点
(r'(?<=</span>)[^>]+')
你和你的正则表达式很接近。在lookback找到位置之后,您只需要读到下一个<:
<
(?<=</span>)[^<]+
在regex101上查看
$ cat test.py import re s='</span>A walk in the park<span class="html-tag"' print re.findall(r'(?<=</span>)[^<]+', s) $ python test.py ['A walk in the park']
您可以使用:
(?:>)(.*)(?:<)
在正则表达式中,每个打开和关闭的圆制动器定义一个组。在这里,我们有3对圆括号,但是第一个和最后一个括号内有?:。这意味着被定义的组是一个非捕获组,因此需要匹配模式,但解析器不会返回它。相反,你想要的是第一组
?:
你和你的正则表达式很接近。在lookback找到位置之后,您只需要读到下一个
<
:在regex101上查看
您可以使用:
在正则表达式中,每个打开和关闭的圆制动器定义一个组。在这里,我们有3对圆括号,但是第一个和最后一个括号内有
?:
。这意味着被定义的组是一个非捕获组,因此需要匹配模式,但解析器不会返回它。相反,你想要的是第一组相关问题 更多 >
编程相关推荐