0
一个XML文件的两个部分。选择多个匹配的单个值
我想匹配名为cutSeven的节点并选择其第一个孩子节点文本。
匹配路径是未知的,所以每个XML在不同位置具有相似的信息。
我正在使用多个XML包含这些信息,我正在为它创建一个可自动更新的概述。
输入XML
<Transform>
<param name="originalHeader">
<path>$header</path>
</param>
<param name="cutSeven">
<path>"fi.siikjin.exitorder.seasam.accesscontrol.k1"</path>
</param>
</Transform>
.
.
.
<Transform>
<param name="originalHeader">
<path>$header</path>
</param>
<param name="cutSeven">
<path>"fi.siikjin.exitorder.seasam.accesscontrol.k1.accesscontrol_k1.accesscontrol"</path>
</param>
</Transform>
我表达
<xsl:value-of select="//@name[normalize-space(.) = 'cutSeven']/parent::*[1]"/>
使我的输出:
<path>"fi.siikjin.exitorder.seasam.sec.accesscontrol.k1"</path>
<path>"fi.siikjin.exitorder.seasam.sec.accesscontrol.k1.accesscontrol_k1.accesscontrol"</path>
预计:
<path>"fi.siikjin.exitorder.seasam.accesscontrol.k1"</path>
如何仅选择第一个匹配节点并忽略其他匹配?或者根据我的说法,只输出1个值。 谢谢你的建议!
谢谢! '(// @ name [normalize-space(。)='cutSeven'])[1]/parent :: *'为我工作 – MypR