2017-05-23 1 views
1

Bonjour, j'essaie de supprimer une ligne dans mon fichier mais je souhaite conserver le reste de mes lignes. Lorsque j'utilise le code ci-dessus, toutes mes autres lignes dans le fichier de mon code HTML sont supprimées. texteSuppression d'une ligne spécifique d'un fichier

essayant de se débarrasser de:

 <h2>Thank you</h2> 
<h2>Please come again</h2> #Get rid of this line 
+4

Ne pas traiter HTML/XML avec des regex ... –

+0

@WillemVanOnsem, [sans crainte] (https://gist.github.com/mgsisk/1094230)! =) – grundic

+0

@grundic: mon point exactement ... –

Répondre

0

Lorsque vous écrivez au même fichier, le contenu sera prioritaire. Donc, vous devez ouvrir nouveau fichier et écrire dans ce fichier comme:

f = open("NEWFILE.html","w") 
for line in lines: 
    if line!= a[0]: 
    f.write(line) 
f.close() 
1

Essayez celui-ci:

with open("myfile.html", "w+") as f: 
    content = f.read() 
    f.write(re.sub(r'<\s*h2[^>]*>(.*?)<\s*/\s*h2>', '', content)) 

Mais comme @Willem Van Onsem recommandé, ne pas utiliser des expressions rationnelles pour XML/HTML , il est plus robuste d'utiliser XML parser, lxml de BeautifulSoup.