将单词边界语法添加到字符串列表中



如果这个问题已经存在,请指出我一个帖子。

如何有效地将单词边界语法添加到字符串列表中?

因此,例如,我想确保下面的单词badpositions仅与一个单词完全匹配,因此我想使用re.search('bwordb', text)

我如何让处于错误位置的单词采用['bPresidentb', 'bProvostb']等形式

text = ['said Duke University President Richard H. Brodhead. "Our faculty look forward']
badpositions = ['President', 'Provost', 'University President', 'Senior Vice President'] 
re_badpositions = [r"b{word}b".format(word=word) for word in badpositions]
indexes = {badpositions[i]:re.search(re_badpositions[i],text) for i in range(len(badpositions))}

如果我理解正确,您正在寻找text字符串中完全匹配(即bWORDb)的所有单词的起始索引。这就是我的做法,但我肯定会在这里添加一个步骤,你可以很容易地做到:

indexes = {word: re.search("b{word}b".format(word=word),text) for word in badpositions}
我发现创建一个要搜索的正则表达式

列表,然后分别搜索它们比同时将这些正则表达式放在适当的位置更容易理解。不过,这完全是由于个人喜好。

最新更新