目前,我仅使用以下两个替换显示从 DB 获得的消息:
text = text.replace("\r\n", "<br />");
text = text.replace("\n", "<br />");
但问题是如果有很多连续的 "\n" 我会有很多
s 或空格,我只想把它们都变成一个。那么你的建议是什么?有没有一种快速替换方法可以使所有连续的\n\n\n\n\n\n\n只有一个只有一个br?
您可以使用量词+
来表示 1 或更多.. 另外,*
表示 0 或更多..
text = text.replaceAll("\n+", "<br />");
text = text.replaceAll("[\n\r]+", "<br />");
如果您有多个\r\n
或\n
介于两者之间的其他内容,您也可以使用
text.replaceAll("(\r\n)+", "<br />")
.replaceAll("\n+", "<br />");
你有没有试过这个:
text = text.replace("(\r\n)+", "<br />");
text = text.replace("\n+", "<br />");
表示前一场比赛的+
“一个或多个”。