【发布时间】:2019-05-02 04:12:11
【问题描述】:
我有如下测试文件(test.txt):
`RANGE(vddout,sup)
`RANGE(vddin,sup_p)
我想修改这个文件如下:
`RANGE(vddout,sup,tol_sup)
`RANGE(vddin,sup_p,tol_sup_p)
这是我尝试过的代码,但它无法找到并使用 re.search 替换模式。你能指出代码中的缺陷在哪里吗?
with open("test.txt", 'r+') as file :
for line in file:
print("line={}".format(line))
findPattern=re.search(r'(`RANGE\(\w+,(\w+))\)',line)
if findPattern:
print("findPattern={}".format(findPattern))
line=re.sub(r'(`RANGE\(\w+,(\w+))\)',r'\1,tol_\2',line)
【问题讨论】:
-
您需要转义您尝试匹配的文字
(。 -
执行替换后,您实际上并没有对线路做任何事情。
-
谢谢,但这只是复制粘贴和编辑过程中的一个错字。转义后我仍然有同样的问题 '('
标签: python regex python-3.x file