Python 组合多个正则表达式子代

Python 组合多个正则表达式子代,python,regex,Python,Regex,我正在使用python中的re库: 现在我有多个替换,例如: sentence = re.sub(" between | for | from ", " preposition ", sentence) sentence = re.sub(" cake | cookies ", " food ", sentence) 。。。等等 样本输入: I like cookies from safeway 输出: I like food preposition safeway 有没有一种方法可以更有

我正在使用python中的re库:

现在我有多个替换,例如:

sentence = re.sub(" between | for | from ", " preposition ", sentence)
sentence = re.sub(" cake | cookies ", " food ", sentence)
。。。等等

样本输入:

I like cookies from safeway
输出:

I like food preposition safeway

有没有一种方法可以更有效地将它们结合起来?

你说的高效是什么意思?更少的代码?运行时更快?您只需编写一个函数,将您的模式和替换作为输入并返回替换的字符串,但最终结果将与您现在所做的非常相似。combine。什么样的组合。这里的句子是一个变量,也就是说,你有多少个句子,或者句型和替换都是变量,或者都是变量。fn=lambda patt,repl,snt:re.subpatt,repl,snt可能有帮助,但它似乎做了类似的事情。谢谢。我只是想看看是否有一种方法可以用更少的代码或者更高效地完成