1

我在java中得到一个文本

此请求是从资助机会中收集所有相关的电子表格,并将它们打包到单个容器 (zip) 文件中。\r\n(此处为空格)此文件将用于在项目办公室界面内的目标系统上导入电子表格.

此文本应在浏览器中呈现为:

此请求是从资助机会中收集所有相关的电子表格,并将它们打包到单个容器 (zip) 文件中。---下一行---------段落分隔符--------- -- 该文件将用于在程序办公室界面内的目标系统上导入电子表格。

我使用以下函数将正则表达式转换为 html 代码:

notLogDetail.setBody(notLog.getBody().replaceAll("(\r\n|\n|\u0085|\u2028|\u2029)", "<br>"));

但是\r\n在Java中的段落分隔符作为空格出现之后,因此上面的函数无法转换它,它在浏览器中呈现如下:

此请求是从资助机会中收集所有相关的电子表格,并将它们打包到单个容器 (zip) 文件中。
该文件将用于在程序办公室界面内的目标系统上导入电子表格。

为了在网络浏览器中显示段落,我应该使用什么?

4

2 回答 2

0

您可以尝试以下 replaceAll 调用:

notLog.getBody().replaceAll("(\r?\n|\u0085|\u2028|\u2029)\\s*", "<br>")
于 2013-06-19T11:51:08.470 回答
0

问题不在于正则表达式。问题是您想<br>在不应该使用的地方使用。你说你自己想要显示段落,所以你应该使用<p>元素(p在 _p_aragraph 中)。

而不是用 替换换行符,在文本的开头和结尾</p><p>添加一个,然后使用 CSS 来调整元素的边距。<p></p><p>

notLogDetail.setBody('<p>' + notLog.getBody().replaceAll("(\r\n|\n|\u0085|\u2028|\u2029)", "</p><p>") + '</p>' );
于 2013-06-19T11:44:15.590 回答