我需要一个命令来执行相反的操作:How to get comma-separated string values of XML elements?
示例:
我有以下XML表达式
<videos>
<video>
<keywords>tag1, tag2, tag3</keywords>
</video>
</videos>
在XPath的帮助下,我需要以某种方式转换它
<keywords>tag1</keywords>
<keywords>tag2</keywords>
<keywords>tag3</keywords>
是
的结果XPath / videos / video / keywords
我怎么能这样做?
答案 0 :(得分:0)
XPath用于选择XML; XSLT用于转换XML。这实际上是XSLT而不是XPath的任务,因为您正在寻求将XML转换为新的,而不是选择已存在的XML。
如果您对选择以逗号分隔的字符串值而不将其包含在keywords
元素中感到满意,
tag1
tag2
tag3
然后你可以使用这个XPath 2.0表达式:
tokenize(/videos/video/keywords, ',\s*')