Xml scala用NodeSeq替换NodeSeq中的文本

Xml scala用NodeSeq替换NodeSeq中的文本,xml,scala,Xml,Scala,我有一些代码看起来像这样 val text = "<em>emphasized</em>" val xml = <span>This is some {text} xml</span> val text=“强调” val xml=这是一些{text}xml “text”值实际上来自数据库,但它将是一个包含“em”元素标记的字符串值 我的问题是如何在NodeSeq中将2个字符串标记“”和“”转换为实际的xml。。。当放入的代码段返回NodeSeq

我有一些代码看起来像这样

val text = "<em>emphasized</em>"
val xml = <span>This is some {text} xml</span>
val text=“强调”
val xml=这是一些{text}xml
“text”值实际上来自数据库,但它将是一个包含“em”元素标记的字符串值


我的问题是如何在NodeSeq中将2个字符串标记“”和“”转换为实际的xml。。。当放入的代码段返回NodeSeq时,我希望“em”标记是实际的xml元素,而不是xml的字符串表示形式。

scala.xml.xml.loadString(string):scala.xml.Elem

注意:这将返回一个
Elem
,并且(显然)需要合理的XML输入。以下字符串(例如)将引发异常:

"<em>emphasized</em><a/>" // no Elem but a NodeSeq
"<em>empha<sized</em>" // invalid XML
“强调”//NodeSeq中没有元素

“emphant如果您没有有效的XML片段,另一个答案是将
XML
组合为
String
,然后使用
XML将所有内容转换为XML。loadString

我尝试了这个方法,但我得到的是“prolog中不允许包含内容”“类型错误。我还使用一个干净的/经过消毒的/硬编码的字符串(没有xml错误)对此进行了测试,得到了相同的错误。我怀疑“loadString”实际上需要一个完整的xml树,包括prolog?@user85116。如果您尝试一下您显示的示例,并将
text
替换为
scala.xml.xml loadString text
,它会起作用。所以,如果不是你,那么你没有给我们足够的信息。我现在看到问题了。。。“text”变量本身不是有效的xml(例如,它可能是“some text”……前面的“some”显然是问题所在。)但是,最终组合的NodeSeq应该是前面有“some”的有效xml;它应该已经转换成“一些文字”。谢谢你的回复。。。请看我对Debilski的评论。