如何使用 RE 模块查找除标签中的单词之外的所有单词?
我知道如何找到一些东西,但是如何以相反的方式去做呢?就像我写了一些要搜索的东西,但实际上我想搜索除标签和标签本身之外的所有单词之外的每个单词?
到目前为止,我管理了这个:
f = open (filename,'r')
data = re.findall(r"<.+?>", f.read())
好吧,它会打印<>
标签内的所有内容,但是如何让它找到除了这些标签内的所有单词?我试过^
, 在里面模式的开头使用[]
,但是符号按.
字面意思处理,没有特殊含义。我也设法解决了这个问题,方法是拆分字符串,使用'''\= <>"'''
,然后检查整个字符串中<>
标签内的单词(如 align、right、td 等),并将不在 <> 标签内的单词附加到另一个列表中。但这有点丑陋的解决方案。
<>
除了里面的任何东西和这些标签本身之外,有没有一些简单的方法来搜索每个单词?因此,假设'hello 123 <b>Bold</b> <p>end</p>'
带有re.findall
, 的字符串将返回:
['hello', '123', 'Bold', 'end']