56 votes

Remplacez \n par<br />

J'analyse du texte à partir d'un fichier avec Python. Je dois remplacer toutes les nouvelles lignes (\n) par car ce texte construira du contenu html. Par exemple, voici une ligne du fichier :

 'title\n'

Maintenant oui:

 thatLine.replace('\n', '<br />')
print thatLine

Et je vois toujours le texte avec une nouvelle ligne après.

185voto

Falmarri Points 20281

thatLine = thatLine.replace('\n', '<br />')

str.replace() renvoie une copie de la chaîne, il ne modifie pas la chaîne que vous transmettez.

67voto

Tim Pietzcker Points 146308

Juste pour le plaisir, tu pourrais aussi faire

 mytext = "<br />".join(mytext.split("\n"))

pour remplacer toutes les nouvelles lignes d'une chaîne par <br /> .

23voto

Mikko Pöri Points 140

Pour une raison quelconque en utilisant python3, j'ai dû échapper au signe "\"

 somestring.replace('\\n', '')

J'espère que ceci aide quelqu'un d'autre!

10voto

user3780389 Points 514

Pour gérer de nombreux délimiteurs de nouvelle ligne, y compris des combinaisons de caractères comme \r\n , utilisez les lignes de séparation (voir ce post connexe ) utilisez ce qui suit :

 '<br />'.join(thatLine.splitlines())

8voto

erickb Points 2248
thatLine = thatLine.replace('\n', '<br />')

Les chaînes en Python sont immuables. Vous devrez peut-être le recréer avec l'opérateur d'affectation.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X