java - 如何将 <br/> 标签插入 java String

标签 java regex xhtml jsf facelets

<分区>

我正在尝试将换行符标记
插入到某些文本中并将其显示在网页上。 < 和 > 符号被翻译成 <>,标签在网页上显示为文本。

当我从数据库中选择它时,文本看起来像这样(我已经将它输出到 SYSOUT):

version 12.4
service timestamps debug datetime
service timestamps log datetime
service password-encryption

然后我通过这个小过滤器运行它:

public DevConfigs getDevConfig() {

    String config = devConfig.getConfig();

    Pattern pattern = Pattern.compile(".$", Pattern.MULTILINE | Pattern.DOTALL);
    Matcher matcher = pattern.matcher(config);
    String newConfig = matcher.replaceAll("<br />");

    devConfig.setConfig(newConfig);
    return this.devConfig;
}

这是网页(这是一个使用 facelets 的 Seam 应用程序):

<rich:tab label="Config">
    hello<br />
    there<br />
    #{devConfig.config}
</rich:tab>

页面源代码如下:

hello<br />
there<br />
&lt;br /&gt;
&lt;br /&gt;

version 12.&lt;br /&gt;
service timestamps debug datetim&lt;br /&gt;
service timestamps log datetim&lt;br /&gt;
service password-encryptio&lt;br /&gt;
&lt;br /&gt;

如您所见,我的标签以 HTML 字符而非标签的形式出现。我需要做什么才能在每行文本的末尾插入换行符标记??

TDR

最佳答案

您需要禁用(默认)HTML 文本转义。您可以使用 h:outputText(或任何与之等效的 RichFaces)并将 escape 属性设置为 false

<h:outputText value="#{bean.property}" escape="false" />

关于java - 如何将 <br/> 标签插入 java String,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2008250/

相关文章:

java - 继承和 LSP

php - str_用连字符替换 A 标签名称属性中的空格

sql - PostgreSQL 和 regexp_split_to_array + unnest

android - 如何在 Android webview 中打开一个 xhtml 文件

javascript - 如何为我的网页提供 HTML 嵌入代码?

javascript - 使用 z-index 堆叠 XHTML 元素

java - 使用 XML 填充 Java 代码中的下拉菜单

java - 如何在通用静态方法中获取类型的字符串表示形式

java 将 pfx 转换为可以导入默认 keystore 的格式

regex - 如何使用带有正则表达式的find,-exec,grep和sed替换部分文本行?