Je dois remplacer une partie d'une chaîne. Je regardais à travers la documentation Python et j'ai trouvé re.sub.Python: Remplacer par regex
import re
s = '<textarea id="Foo"></textarea>'
output = re.sub(r'<textarea.*>(.*)</textarea>', 'Bar', s)
print output
>>>'Bar'
Je m'y attendais pour imprimer '<textarea id="Foo">Bar</textarea>'
et non 'bar'.
Quelqu'un pourrait-il me dire ce que j'ai fait de mal?
La recommandation habituelle est que vous n'utilisez pas regex pour HTML. C'est une réponse de longue date sur ce site, avec quelques réponses classiques, aboutissant à celui-ci. http://stackoverflow.com/questions/1732348/regex-match-open-tags-except-xhtml-self-contained-tags/1732454#1732454 – hughdbrown
Oui, je pensais utiliser regex car c'est vraiment un petit morceau mais je suis passé à BeautifulSoup au lieu. – Pickels