搜索和替换文件中的文本
我想搜索一行并替换file.txt,
CURRENT_BUILD = 111111
CURRENT_BUILD = 221111
使用python。
您可以通过文件中的行迭代,将其保存到list
,然后将列表输入文件,逐行,如有必要:
with open('file.txt') as f:
lines = f.readlines()
with open('file.txt', 'w+') as f:
for line in lines:
if line == 'CURRENT_BUILD = 111111n':
f.write('CURRENT_BUILD = 221111n')
else:
f.write(line)
CURRENT_BUILD = '111111'
print (CURRENT_BUILD.replace('111111', '221111'))
替换()的语法为:
str.replace(old, new [, count])
旧的 - 旧子字符串,您想替换
新的 - 新的子字符串将取代旧的子字符串
count(可选) - 您想用新子字符串替换旧子字符串的次数
如果未指定计数,请替换()方法将旧子字符串的所有出现替换为新的子字符串。
我不确定这是否是您的意思
编辑
如果是在文本中替换您想要的,那将是您最好的选择。
import fileinput
with fileinput.FileInput(filename, inplace=True, backup='.bak') as file:
for line in file:
print(line.replace(text_to_search, replacement_text), end='')
信用@jfs中的@jfs如何使用python?