1
我想从第三方软件中替换控件XML文件中的通配符。XSLT - 将每个XML属性值与特定属性值匹配并替换
不幸的是,这些通配符还用作此XML文件中的属性值。
我给你举个例子:
<control>
<some-tag id="$wildcard1$" version="3.14">
<another-tag id="second_level">stackoverflow rocks!</another-tag>
</some-tag>
<some-tag id="foo" version="$wildcard2$"/>
<some-tag id="bar" version="145.31.1"/>
</control>
我试着写一个带参数的通用改造替换通配符的属性值。
我最大的问题是,我不知道属性名称。所以我需要匹配XML文件中的每个属性。这很容易但我如何匹配每个属性与特定的值(例如$通配符$)?
注意'匹配= “[。= $ wildacard] */@ *”'可缩短至'比赛=“@ * [。= $ wildacard]”'。如果您确实使用XSLT 3.0版,那么您可以简单地声明''而不是第一个模板。我还注意到,你声明的参数名是'name ='通配符'',但你的代码引用'$ wildacard'。 –