例如,我有这个单词列表:
words = ['foo','doo']
我希望在看起来像这样的单词列表中找到它们:
text = ['<p>foo','one','two','rgb(0,0,0);">dupa</span></p>']
我想要做的就是用第一个列表中的每个单词包含一个html标签,如<strong></strong>
据我所知,我应该做一些循环:
for word in text:
if word in words:
do something here
但我不知道如何用标签包装每个单词。任何帮助都会很好!
答案 0 :(得分:1)
您可以使用正则表达式,匹配所有这些单词的析取,并用标记中包含的相同单词替换它们。
这样的事情:
import re
p = re.compile("(%s)" % "|".join(words))
for word in text:
print p.sub(r"<tag>\1</tag>", word)
或者如果您想要创建新列表:
text_new = [p.sub(r"<tag>\1</tag>", word) for word in text]