【发布时间】:2015-06-23 05:29:20
【问题描述】:
我刚刚将我的问题演示为如下输入和输出格式。 我有一个作为 xml 文档的输入,其中包含以下数据
<Users>
<user>
<name>Mark Curtain</name>
<email>mark@gmail.com</email>
<username>mark</username>
</user>
<user>
<name>Zuke Gossip</name>
<email>zuke@abc.com</email>
<username>zuke</username>
</user>
<user>
<name>Villan Kiosk</name>
<email>kv@gmail.com</email>
<username>kvk</username>
</user>
</Users>
我想在一个字符串中获取用户名和名称,应该用分号(;)分隔。
例如:用户名: "mark;zuke;kvk"
类似的名字还有名字:“Mark Curtain;Zuke Gossip;Villan Kiosk”
是否有任何 Xpath 函数可以实现相同的功能? XSL 转换中是否有任何方法可以将以上字符串作为输出?
【问题讨论】:
-
显示你尝试了什么?
-
哦,是的,这可以使用 XSL 转换。您只需要迭代每个
Users/user/username以获取第一个字符串,并在name上迭代以获取第二个字符串(在除最后一个元素之外的每个元素之后连接;)。 -
是的,你是正确的@LingamurthyCS。但如果是通过 XPath 或 XSLT 或 XPath 的其他功能完成将不胜感激。
-
@TechnoCracker 你介意发布你的实现吗?
-
在 xslt 2.0 中,您可以在
xsl:value-of上使用@separator属性,然后实现只需一行。