在 XSL 中,执行类似于 C# 中的操作:list.Select(x=>x.ID).Distinct();
我的目的是在 XSL 中,仅显示具有公共值的节点集的文本节点。例如,我有以下 XML:
<Nodes>
<Node att="1">A</Node>
<Node att="1">B</Node>
<Node att="2">C</Node>
<Node att="2">D</Node>
<Node att="3">E</Node>
</Nodes>
我的输出将是:“ACE”。
我不知道属性“att”的值是什么。它可以是任何字符串。
任何建议将不胜感激!
My intent is in an XSL, to display only once the text node for set of nodes with a common value. For example, I have the following XML:
<Nodes>
<Node att="1">A</Node>
<Node att="1">B</Node>
<Node att="2">C</Node>
<Node att="2">D</Node>
<Node att="3">E</Node>
</Nodes>
My output would be: "ACE".
I don't know what the values of the attribute "att" will be. It can be any string.
Any suggestion would be greatly appreciated!
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
这甚至可以在单个 XPath 表达式中完成:
因此,将其包装在 XSLT 中为我们提供了:
并将其应用到提供的 XML 文档: >
产生想要的正确结果:
This can even be done just in a single XPath expression:
So, wrapping it in XSLT gives us:
and applying this to the provided XML document:
produces the wanted, correct result:
这是一个常见问题解答。请参阅http://www.jenitennison.com/xslt/grouping/muenchian.html
此 XSLT 代码:
将提供所需的(如果我理解正确的话)输出:
它也可以与输入一起使用,例如:
输出将是:
It's a FAQ. See http://www.jenitennison.com/xslt/grouping/muenchian.html
This XSLT code:
Will provide the desired (if I understood correctly) output:
It would also work with input like, for example:
Output will be:
这个小样式表:
输出:
编辑:只是为了好玩 XPath 2.0 解决方案
结果:
This little stylesheet:
Output:
Edit: Just for fun XPath 2.0 solution
Result: