而不是阅读每一行我们只是在文件中搜索字符串并替换它...我正在尝试但无法知道该怎么做?
file = open(C:\\path.txt,"r+")
lines = file.readlines()
replaceDone=0
file.seek(0)
newString="set:: windows32\n"
for l in lines:
if (re.search("(address_num)",l,re.I) replaceDone==0:
try:
file.write(l.replace(l,newString))
replaceDone=1
except IOError:
file.close()
答案 0 :(得分:0)
这是一个你可以适应的例子,用文件的'set :: windows32'替换'(address_num)'的每个序列:
import fileinput
import re
for line in fileinput.input('/home/jon/data.txt', inplace=True):
print re.sub('address_num', 'set:: windows32', line, flags=re.I),
答案 1 :(得分:0)
这不是非常有效,但我想这正是你要找的东西:
import re
text = open(file_path, 'r').read()
open(file_path, 'w').write(re.sub(old_string, new_string, text))
读取整个文件,替换并回写整个文件。