如何编写Python正则表达式以在任何地方匹配多个单词?

以下使用Python正则表达式的代码匹配给定字符串中给定的多个单词

示例

import re
s = "These are roses and lilies and orchids, but not marigolds or .."
r = re.compile(r'\broses\b | \bmarigolds\b | \borchids\b', flags=re.I | re.X)
print r.findall(s)

输出结果

这给出了输出

['roses', 'orchids', 'marigolds']