用<br />替换\n

Max*_*rai 41 python string replace newline

我正在用Python解析文件中的文本.我必须替换所有换行符(\n),
因为这个文本将构建html-content.例如,这是文件中的一些行:

'title\n'
Run Code Online (Sandbox Code Playgroud)

现在我做:

thatLine.replace('\n', '<br />')
print thatLine
Run Code Online (Sandbox Code Playgroud)

我仍然看到带有换行符的文本.

Fal*_*rri 151

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

str.replace()返回字符串的副本,它不会修改您传入的字符串.

  • 这个答案似乎比公认的好. (9认同)
  • 欢迎使用 StackOverflow。 (3认同)

Tim*_*ker 52

只是为了踢,你也可以

mytext = "<br />".join(mytext.split("\n"))
Run Code Online (Sandbox Code Playgroud)

<br />.替换字符串中的所有换行符.

  • 感谢您的接受,但请接受@ Falmarri的回答.它更像是Pythonic.这更像是一种有趣的,向后的方式.不是真的推荐...... (23认同)
  • @martineau:我的意思是"应该有一个 - 最好只有一个 - 显而易见的方法".而且我很确定我的不是那个. (4认同)

小智 11

由于某种原因使用python3我不得不逃避"\" - 符号

somestring.replace('\\n', '')
Run Code Online (Sandbox Code Playgroud)

希望这有助于其他人!

  • 会给+2。5星! (2认同)

use*_*389 9

要处理许多换行符定界符,包括,字符组合\r\n,请使用分割线(请参阅此相关文章),请使用以下命令:

'<br />'.join(thatLine.splitlines())
Run Code Online (Sandbox Code Playgroud)


eri*_*ckb 7

thatLine = thatLine.replace('\n', '<br />')
Run Code Online (Sandbox Code Playgroud)

Python中的字符串是不可变的.您可能需要使用赋值运算符重新创建它.