字符串搜索和替换python中的麻烦

时间:2017-05-11 07:45:26

标签: python-3.x

目前Iam正在尝试打开一个txt文件(可以正常工作),使用通配符搜索某些内容,并将该行替换为找到的表达式的部分内容。

这条线本身如下: CREATEDATE = “20170505101257000”

因为日期发生了变化,我只想搜索包含以下内容的行: CREATEDATE

如果找到CreateDate,则应将此行替换为: 打印日期:170505

如您所见,在这种情况下,日期代码应从20170505101257000更改为170505。跳过前2位和后9位

我当前的代码只能搜索完全匹配并用固定的东西替换它(见下文)。我读了关于正则表达式,但我的py知识有限,因为我是初学者。所以我需要你的帮助来改变我的代码。

import sys

path = r'C:\temp\test.txt'
fh = open((path), 'r')
Lines = fh.readlines()
fh.close()
fh = open((path), 'w')

for Line in Lines:
  if Line.find('CreateDate="20170505101257000"') >= 0:
    Line = Line.replace('CreateDate="20170505101257000"', 'test')
    fh.write(Line)
  else:
    fh.write(Line)

fh.close()

0 个答案:

没有答案