目前,我正在使用这两个替代品显示我从DB获得的消息:
text = text.replace("\r\n", "<br />");
text = text.replace("\n", "<br />");
但问题是,如果有很多连续的“\ n”,我会有很多白色或空格,我只想把它们全部放在一起。那你的建议是什么?是否有快速替换方法使所有连续的\ n \ n \ n \ n \ n \ n \ n只有一个br?
答案 0 :(得分:6)
您可以使用量词+
来表示1个或更多..
此外,*
表示0或更多..
text = text.replaceAll("\n+", "<br />");
text = text.replaceAll("[\n\r]+", "<br />");
答案 1 :(得分:2)
如果您有多个\r\n
或\n
,其中包含其他内容,您也可以使用
text.replaceAll("(\r\n)+", "<br />")
.replaceAll("\n+", "<br />");
答案 2 :(得分:1)
你试过这个:
text = text.replace("(\r\n)+", "<br />");
text = text.replace("\n+", "<br />");
+
表示前一场比赛的“一个或多个”。