Python:正则表达式整个模式替换

时间:2016-11-08 23:45:10

标签: python regex

我正在使用属性表中的宏来练习python正则表达式替换。 我用蛮力的方式做了类似的事情:

config_regex = re.compile(r'$(Configuration)')
test_str = r'<Import Project="$(SolutionDir)\PropertySheets\Optimization.$(Configuration).props" />'
print config_regex.sub(r'Release', test_str)

但是,我的测试字符串中的宏似乎没有被替换。它仍然打印:

<Import Project="$(SolutionDir)\PropertySheets\Optimization.$(Configuration).props" />

请帮帮我一点。感谢。

1 个答案:

答案 0 :(得分:0)

编辑:(蒂姆的评论是正确的) 如果正则表达式以$开头,它将尝试匹配字符串的开头结尾

此外,括号在exp(捕获)

中具有特殊含义

您应该在这些字符之前尝试使用\,或者使用re模块中的escape函数