0

我正在尝试创建一个正则表达式来替换存储在word目标字符串中的字符串的所有单词实例:

regex = re.compile("\\b" + word + "\\b")

Python 抱怨“引发错误,v # 表达式无效”。为什么会出现错误?我确保避开我的反斜杠,对吧?

4

1 回答 1

4

由于re.compile不知道其输入的一部分来自用户,因此您应该使用re.escape特殊字符(如括号)来word匹配这些字符,而不是在正则表达式中采用它们的特殊含义,例如:```

import re
word = 'Par(ens'
regex = re.compile("\\b" + re.escape(word) + "\\b")
于 2013-10-12T02:29:52.727 回答