如何使用XPath或XQuery选择字符串中的字符?

时间:2012-09-12 07:22:59

标签: string select xpath xquery

我有以下XML文件:

<unit id="u-1.01"/>
<unit id="u-2.01"/>

我想选择 id 属性的第三个字符:在这种情况下,字符为 1 2

选择角色并将其分配给变量的最简单方法是什么?

2 个答案:

答案 0 :(得分:2)

在XQuery 1.0中

let $char := substring(@id, 3, 1) return ...
XPath 2.0中的

for $char in substring(@id, 3, 1) return ...

两者都假设<unit>元素是上下文项

答案 1 :(得分:0)

有两种方法:

foreach (XmlNode item in n.ChildNodes)
        {
            string valToFind = item.Attributes["id"].Value;
            int pos=val.IndexOf(".");
            string finalVal = val.Substring(2, pos-2);//either this 
            string finalVal = val.Split('-')[1].Split('.')[0];//or this(both will work for you)


        }