我正在寻找 Python 中的正则表达式。
我有一个很长的文本字符串,我有一个子字符串列表,可以在长文本字符串中进行匹配。

示例子字符串:'table', 'e furnish'
示例字符串:

'Today is a good day to do up the table furnishings. Lets go to the store.'

对于“表”,我想提取“表”。
对于“e furnish”,我想提取“table furnishs”。

我目前的代码是:
for item in checklist:
 pattern = r"[\s](.*)" + item +"([a-z]){0,2}[\s\.]"
 print pattern
 matchObj = re.search(pattern, line)
 if matchObj:
   print "matchObj.group() : ", matchObj.group()
 else:
   print ("No match!!")

但我无法获取包含子字符串的整个单词。
问题是子串可以是单个或多个单词,它可能匹配整个单词或仅匹配单词的一部分。对于有多个词的子串,提取的词必须连在一起,中间不能有其他词。

谢谢大家的帮助。

最佳答案

您可以使用 \w* 任意数量的单词字符作为 clown 。

\w*e furnish\w*

See demo at regex101

10-06 07:43