我有以下文本,我想通过邮件发送。我必须将其转换为html,因此我必须在每个行分隔符中添加
。
我怎样才能使它适合我呢?这是我的尝试。
text = """
Hi, my name is John,
Regards
"""
strString = map(lambda x: x + '<br>', text)
print(list(strString))
['n<br>', 'H<br>', 'i<br>', ',<br>', ' <br>', 'm<br>', 'y<br>', ' <br>', 'n<br>', 'a<br>', 'm<br>', 'e<br>', ' <br>', 'i<br>', 's<br>', ' <br>', 'J<br>', 'o<br>', 'h<br>', 'n<br>', ',<br>', 'n<br>', 'R<br>', 'e<br>', 'g<br>', 'a<br>', 'r<br>', 'd<br>', 's<br>', 'n<br>']
Desired output
text = """
Hi, my name is John,<br>
Regards<br>
"""
text
'nHi, my name is John,<br>nRegards<br>n'
你可能想用代替换行符
>>> text = """
... Hi, my name is John,
... Regards
... """
>>> import re
>>> print(re.sub(r"n", "<br>n", text))
<br>
Hi, my name is John,<br>
Regards<br>
或者,您可以使用<pre>
(预格式化文本)按原样写出文本!(虽然它更适合于代码块,可能不适合其他文本)
<pre>
Hi, my name is John,
Regards
</pre>
PacketLoss注意,如果你只有一个微不足道的字符/子字符串要替换,使用.replace()
方法的字符串是好的,可能会更好/更清晰!
如果您想将n
替换为<br>
,您可以简单地使用string.replace()
print(text.replace('n', '<br>'))
#<br>Hi, my name is John,<br>Regards<br>
要保留新行,只需修改您的替换值。
print(text.replace('n', '<br>n'))
<br>
Hi, my name is John,<br>
Regards<br>