我正在尝试从文本文件中删除字符串。字符串由不同类型的字符组成,并且都是不同的,但它们都以相同的三个字母开头,并在行尾完成。
到目前为止,我正在使用此代码,当我想要删除所有特定字符串时,我知道这些代码有效:
import sys
import fileinput
for i, line in enumerate(fileinput.input('duck_test.txt', inplace=1)):
sys.stdout.write(line.replace('pep.*', '')
我试图使用'。*'来修改它以删除通用字符串,但它不起作用。有谁知道我哪里出错了?感谢。
答案 0 :(得分:0)
尝试使用re
模块用于此目的:
import re
import fileinput
for line in fileinput.input('duck_test.txt', inplace=True):
if not re.search(r'pep.*', line):
sys.stdout.write(line)
答案 1 :(得分:0)
以下测试代码将替换以字母“pep”开头的所有字符串。并以文件中的换行符结尾' duck_test'用空字符串:
import sys
import fileinput
import re
for i, line in enumerate(fileinput.input('duck_test', inplace=1)):
sys.stdout.write(re.sub(r'pep.*', '', line))