2011-02-08 97 views
2

我有一个div元素我想在XQuery来分开
我开始在xquery中分割逗号分隔的字符串?

<tags>{for $tag in //div[@id='tags'] 
return 
    <tag>{$tag}</tag>}</tags> 

的目标是将这个

<div id="tags">Tagged: tag1, TAG2, tag3</div> 

预期的结果是

<tags><tag>tag1</tag><tag>TAG2</tag><tag>tag3</tag></tags> 
+0

你在运行这个xquery表达式?在TSQL我得到正确的结果...唯一的区别是没有换行符和双引号'在$ div中的$标记[@ id =“tags”]' – kelloti

+0

仍然得到'

Tagged: tag1, TAG2, tag3
' 。你在期待什么? – kelloti

+0

TAG2 TAG3' – Moak

回答

6

Supposedly可以使用tokenize(string, pattern)函数根据模式拆分字符串。 SQL Server 2008没有这个功能,但这可能是你的答案如果你正在使用的是。我想它会看起来像这样,如果我能得到它的工作:

<tags>{ 
    for $tag in tokenize(
       substring-after(
        (//div[@id='tags'])[1], 
        'Tagged:' 
       ), 
       ',' 
       ) 
    return 
    <tag>{ 
     normalize-space($tag) 
    }</tag> 
}</tags> 
+0

冷静,很高兴它的工作,我期待'标签1 – kelloti

相关问题