我有两个xml.Elem值,我需要将一个作为子项插入另一个节点。详细地说,这意味着:
val a = <p id="s" name="S">
<sE id="st" name="St"></sE>
<sProcess id="s_process" name="SP"></sProcess>
</p>
val b = <p id="e" name="S">
<sE id="dd" name="DD"></sE>
</p>
我需要将标记为Elem b的节点中的所有Childs作为子节点插入到Elem中标记为sProcess的节点。因此,在应用此之后,它看起来像这样:
val a = <p id="s" name="S">
<sE id="st" name="St"></sE>
<sProcess id="s_process" name="SP">
<sE id="dd" name="DD"></sE></sProcess>
</p>
我的方法到现在为止:
a.foreach(n => ...)
但这仅访问标记为p的节点
答案 0 :(得分:0)
如果你使用b.child()
方法,它会给你一个Seq[Node]
来自Node labled p的所有Childs。然后,您可以使用函数作为类型将val a
的定义更改为函数。
val a : Seq[Node] => Elem = (x:Seq[Node]) => <p id="s" name="S">
<sE id="st" name="St"> {x} </sE>
<sProcess id="s_process" name="SP"></sProcess>
</p>