如何转义 Scala 中的 XML/HTML 文档中使用的字符串?

问题描述 投票:0回答:4

具体来说,替换字符串中的特殊 XML 字符的最简单、最惯用的方法是什么。例如,将

<Jack & Jill>
转换为
&lt;Jack &amp; Jill&gt;
的最简单、最惯用的方法是什么。

html xml scala escaping
4个回答
28
投票

事实证明有一种简单的方法可以做到这一点(尽管快速的网络搜索没有找到明显的解决方案):只需使用方法

xml.Utility.escape


2
投票

如果您想转义 scala.html 文件中的

@
符号,例如使用 Scala/Play,请执行
@@

并给在这里提供此答案的人如何使用 play 框架(scala)在 HTML 中打印@符号点赞。

我在寻找上述答案时遇到了这个页面,所以我只是想在这里复制它,因为其他人也可能会来到这里。


1
投票

我建议使用函数

org.apache.commons.text.StringEscapeUtils.escapeHtml4
,由
build.sbt
添加到
libraryDependencies += "org.apache.commons" % "commons-text" % "1.9"

xml.Utility.escape
逃脱,例如
«
&laquo;


0
投票

使用 scala-xml,您可以创建一个

scala.xml.Text
节点并使用
toString
:

打印内容
println(scala.xml.Text("<Jack & Jill>").toString)

这将显示:

&lt;Jack &amp; Jill&gt;
© www.soinside.com 2019 - 2024. All rights reserved.