我有一个形式的参数文件:
parameter-name parameter-value
其中参数可以按任何顺序排列,但每行只有一个参数。我想用一个新值替换一个参数的 parameter-value
。
我正在使用 之前发布 的行替换功能来替换使用 Python 的 string.replace(pattern, sub)
的行。例如,我使用的正则表达式在 vim 中有效,但在 string.replace()
中似乎无效。
这是我正在使用的正则表达式:
line.replace("^.*interfaceOpDataFile.*$/i", "interfaceOpDataFile %s" % (fileIn))
其中 "interfaceOpDataFile"
是我要替换的参数名称(/i 表示不区分大小写),新参数值是 fileIn
变量的内容。
有没有办法让 Python 识别这个正则表达式,或者有没有另一种方法来完成这个任务?
原文由 Troy Rockwood 发布,翻译遵循 CC BY-SA 4.0 许可协议
str.replace()
v2 | v3不识别正则表达式。要使用正则表达式执行替换,请使用
re.sub()
v2 | v3 。例如:
在循环中,最好先编译正则表达式: