我在java中获取文本
此请求是从资助机会中收集所有相关的eForms并将它们打包到一个容器(zip)文件中。\ r \ n(此处为空格)此文件将用于在目标系统上导入eForms。程序办公室界面。
此文本应在浏览器中呈现为:
此请求是从资助机会中收集所有相关的eForms并将它们打包到一个容器(zip)文件中.--- next line ---- ------段落分隔符-----------该文件将用于在程序办公室界面中的目标系统上导入eForms。
我使用了以下函数将正则表达式转换为html代码:
notLogDetail.setBody(notLog.getBody().replaceAll("(\r\n|\n|\u0085|\u2028|\u2029)", "<br>"));
但是在\r\n
之后有一个段落分隔符,它在Java中作为空格,因此上面的函数无法转换它,它在浏览器中呈现如下:
此请求是从资助机会中收集所有相关的eForms并将它们打包成一个容器(zip)文件。
该文件将用于在程序办公室界面中的目标系统上导入eForms。
我应该使用什么才能在网络浏览器中显示段落?
答案 0 :(得分:0)
问题不在于正则表达式。问题是您希望在不应该使用<br>
的地方使用<p>
。您自己说要显示段落,因此您应该使用</p><p>
元素( p ,如_p_aragraph中所示)。
而不是使用<p>
替换换行符,在开头添加</p>
,在文本末尾添加<p>
,然后使用CSS调整notLogDetail.setBody('<p>' + notLog.getBody().replaceAll("(\r\n|\n|\u0085|\u2028|\u2029)", "</p><p>") + '</p>' );
的边距{1}}元素。
{{1}}
答案 1 :(得分:0)
您可以尝试关注replaceAll调用:
notLog.getBody().replaceAll("(\r?\n|\u0085|\u2028|\u2029)\\s*", "<br>")