我想通过xpath删除xml属性,但是 xml元素将来可能有更多的属性。
html code:
<p class="red, blue, green">test/<p>
xpath:
<xpath expr="//p[contains(@class, 'green')]" position="attributes">
<attribute name="class">red, blue</attribute>
</xpath>
修复文字“红色,蓝色”的更好方法是什么?
为了支持可能的新版html文件,如
将来"<p class="red, blue, green, brown">test</p>"
,无需再次更改xpath代码。
例如实际属性列表为var + an xpath函数
答案 0 :(得分:2)
如何将@class设置为
concat(substring-before(@class, "green"), substring-after(@class, "green"))
你也需要解决被遗弃的逗号,但正如BjörnTantau评论的那样,在真正的HTML中,类将用空格分隔,因此你可以将结果包装到normalize-space
。