I'm trying to search for a substring within lines of a file and insert similar lines immediately after the found line. Although there were similar solutions using the fileinput
method, I could not figure out how to use it in my case.
Here is what I have tried:
list = ["abc", "pqr", "xyz"]
inputfile = open (somefile.txt, 'a+')
for line in <inputfile>:
if 'stringstosearch' in line:
for <item> in list:
new_line = "new_line with %s" %(item)
inputfile.write(new_line + "\n")
break
inputfile.close()
for example if the text file is:
Torquent scelerisque aptent hac rhoncus vel
Turpis vestibulum tellus laoreet mollis conubia facilisis tempor nec semper
In mi mauris etiam quisque sem congue est velit lacus convallis amet ante ad
Integer maecenas semper quisque nisi hendrerit, libero feugiat cursus euismod accumsan
Dui sed magna vivamus augue ac quisque ac mauris torquent eros taciti
Conubia curae vel himenaeos dictumst sed at
string to search = "mauris etiam quisque"
list = ["abc", "pqr", "xyz" ]
Expected output after file write:
Torquent scelerisque aptent hac rhoncus vel
Turpis vestibulum tellus laoreet mollis conubia facilisis tempor nec semper
In mi mauris etiam quisque sem congue est velit lacus convallis amet ante ad
new_line with abc
new_line with pqr
new_line with xyz
Integer maecenas semper quisque nisi hendrerit, libero feugiat cursus euismod accumsan
Dui sed magna vivamus augue ac quisque ac mauris torquent eros taciti
Conubia curae vel himenaeos dictumst sed at