1
我想写一个Python脚本,会发现在一个目录树中的所有.py文件,并进行以下替换:正则表达式操作切断第一个字母
myAppl.Variable(VDC).Read () - > MAPort.Read(Model.VDC)。价值
但是它当前得到的,如下所示:
myAppl.Variable(VDC).Read() - > MAPort.Read(型号.DC).Value
为什么我的变量的第一个字母被删除了,我做了什么错了?
mypath = "P:\\myTest"
fnames = []
for root, subFolders, files in os.walk(mypath):
for file in files:
if file.endswith(".py"):
fnames.append(root + '\\' + file)
for fname in fnames:
with open(fname) as reader:
data = reader.read()
data = re.sub(r'(myAppl.Variable\(.(.+)\).Read\(\))',
r'MAPort.Read(Model.\2).Value', data)
with open(fname, 'w') as writer:
writer.write(data)
因为点 - '\('删除它 –
高兴它为你工作也请考虑upvoting如果我的回答证明对您有所帮助(。请参阅[如何在Stack Overflow上注册?](http://meta.stackexchange.com/questions/173399/how-to-upvote-on-stack-overflow))。 –