Como pesquiso e substituo o texto em um arquivo usando o Python 3?
Aqui está o meu código:
import os
import sys
import fileinput
print ("Text to search for:")
textToSearch = input( "> " )
print ("Text to replace it with:")
textToReplace = input( "> " )
print ("File to perform Search-Replace on:")
fileToSearch = input( "> " )
#fileToSearch = 'D:\dummy1.txt'
tempFile = open( fileToSearch, 'r+' )
for line in fileinput.input( fileToSearch ):
if textToSearch in line :
print('Match Found')
else:
print('Match Not Found!!')
tempFile.write( line.replace( textToSearch, textToReplace ) )
tempFile.close()
input( '\n\n Press Enter to exit...' )
Arquivo de entrada:
hi this is abcd hi this is abcd
This is dummy text file.
This is how search and replace works abcd
Quando eu procuro e substituo 'ram' por 'abcd' no arquivo de entrada acima, ele funciona como um encanto. Mas quando eu faço isso vice-versa, ou seja, substituindo 'abcd' por 'ram', alguns caracteres indesejados são deixados no final.
Substituindo 'abcd' por 'ram'
hi this is ram hi this is ram
This is dummy text file.
This is how search and replace works rambcd