草庐IT

RuleTransformer

全部标签

xml - scala.xml.RuleTransformer 的复杂性真的呈指数级增长吗?

这是one的后续行动我以前的帖子。我试图理解为什么RuleTransformer性能太差了。现在我相信它之所以这么慢是因为它的复杂度是O(2n),其中n是输入XML树的高度。假设我需要将所有元素的所有标签重命名为标签“b”:importscala.xml._,scala.xml.transform._valrule:RewriteRule=newRewriteRule(){overridedeftransform(node:Node):Seq[Node]=nodematch{casee:Elem=>e.copy(label="b")caseother=>other}}deftrans(

xml - 从 XML 中删除节点

我想从另一个文档生成一个XML文档,过滤符合指定条件的子节点。我应该怎么做? 最佳答案 您可以使用scala.xml.transform中的RuleTransformer。假设你有一个带有“删除”值的Action属性valremoveIt=newRewriteRule{overridedeftransform(n:Node):NodeSeq=nmatch{casee:Elemif(e\"@action").text=="remove"=>NodeSeq.Emptycasen=>n}}newRuleTransformer(remove