草庐IT

XPath_Query

全部标签

xml - XPath - node() 和 text() 之间的区别

我无法理解text()和node()之间的区别。据我了解,text()是标签apple之间的任何内容,在这种情况下是apple。节点将是该节点实际是什么,即item但后来我被分配了一些工作,它要求我“选择生产下所有项目的文本”,另一个问题是“选择所有部门的所有经理节点”输出应该如何看待text()而不是node()XML片段:applebananapepper123-456-7891John当然,部门多了,经理多了,但这只是一小段代码而已。如有任何帮助,我们将不胜感激! 最佳答案 text()和node()是节点测试,在XPath术

.net - 我可以在 XPath 表达式中使用 Regex 吗?

像.//div[@id='foo\d+]这样的东西来捕获带有id='foo123'的div标签。如果重要的话,我正在使用.NET。 最佳答案 正如其他答案所指出的,XPath1.0不支持正则表达式。尽管如此,您有以下选择:使用XPath1.0表达式(注意starts-with()和translate()函数),如下所示:.//div[starts-with(@id,'foo')and'foo'=translate(@id,'0123456789','')andstring-length(@id)>3]使用EXSLT.NET-有一种方

xml - XPath、XQuery 和 XPointer 之间的区别

XPath、XQuery和XPointer有什么区别?据我所知,XQuery是XPath的扩展版本。我对XPath有一些基本了解。是否有XPath中可用而XQuery中没有的功能?昨天,我听到了一个新词,XPointer。我很迷惑。哪种语言用于哪种目的? 最佳答案 维基百科是解决此类问题的好起点。一般来说,XPath是一种用于在DOM中简洁地精确定位XML节点的语言。XQuery是XPath的超集,它还提供FLWOR语法,类似于SQL。最后,XPointer包括XPath,但也提供了一个更简单的基于位置的寻址方案。当然,您始终可以阅

xml - XSLT/XPath 中的当前节点与上下文节点?

在XSLT中,“当前节点”和“上下文节点”有什么区别?您可以在此处找到这两个术语:http://www.w3.org/TR/xslt.您什么时候会使用其中一个?你如何调用它们? 最佳答案 当前节点是模板当前正在运行的任何节点。通常这恰好也是上下文节点,但上下文节点在嵌套的XPath表达式(方括号中的部分)中具有特殊含义。在那里,它指的是当前正在测试匹配的任何节点。因此,上下文节点在XPath表达式中发生变化,但当前节点不会发生变化。上下文节点可以用点缩写(.)或有时完全省略。这可能有点令人困惑,因为在嵌套表达式之外,一个点表示当前节

xml - 带有命名空间的 XPath 选择节点

它是一个.vbproj,看起来像这样15a7ee82-9020-4fda-a7fb-85a61664692d我只想获取ProjectGuid,但当存在命名空间时它不起作用...DimxmlDocAsNewXmlDocument()DimfilePathAsString=Path.Combine(mDirectory,name+"\"+name+".vbproj")xmlDoc.Load(filePath)DimvalueAsObject=xmlDoc.SelectNodes("/Project/PropertyGroup/ProjectGuid")我该怎么做才能解决这个问题?

xml - xpath:查找具有给定属性的节点,其值包含字符串

是否有xpath方法来查找具有给定属性且其值包含给定字符串的节点?例如,我有一个xml文档,想要找到address属性包含字符串Downing的节点,这样我就可以找到以下节点: 最佳答案 select="//*[contains(@address,'Downing')]" 关于xml-xpath:查找具有给定属性的节点,其值包含字符串,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/questions

xml - 使用 XPath,如何根据文本内容和属性值选择节点?

鉴于此XML:July30,我想找到文本为“July”且Quad/P1/X属性大于90的节点。因此,在这种情况下,它不应返回任何匹配项。但是,如果我使用GT(>)或LT(所以://Word[text()='July'and//P1[@X将返回true,如愿//Word[text()='July'and//P1[@X>90]]如何在P1@X属性上正确约束它?此外,假设我有多个Page元素,用于不同的页码。我将如何另外限制上述搜索以查找具有text()='July',P1@X的节点?和页面@pageNumber=3? 最佳答案 一般来说

xml - XPath 中不区分大小写的匹配?

例如,对于下面的XML如何用xpath匹配前4条记录,如//CD[@title='empireburlesque']。有xpath函数可以做到这一点吗?也接受其他解决方案,例如PHP函数。 最佳答案 XPath2有一个小写(和大写)字符串函数。这与不区分大小写不太一样,但希望它足够接近://CD[lower-case(@title)='empireburlesque']如果您使用的是XPath1,则有一个hackusingtranslate. 关于xml-XPath中不区分大小写的匹配?

xml - 使用 xpath 获取节点的第 N 个子节点

我的示例输入XML是:itemitem1item2item3item4我想选择一个节点b,它的位置是一个变量的值。如何使用变量的值来测试节点的位置? 最佳答案 你可以使用这个:/root/a/b[position()=$variable]position()以1为基础http://saxon.sourceforge.net/saxon6.5.3/expressions.html 关于xml-使用xpath获取节点的第N个子节点,我们在StackOverflow上找到一个类似的问题:

xml - XPath 只返回包含文本的元素,而不返回其父元素

在这个xml中,我要匹配,包含'match'的元素(random2元素)matchnomatch好的,到目前为止我有://[re:test(.,'match','i')](withreinthepropernamespace)这会返回random2、random1和root...我只想得到“random2”有什么想法吗? 最佳答案 您要查找包含“匹配”或等于“匹配”的元素吗?这将找到具有等于“匹配”的文本节点的元素(由于random2中的前导和尾随空白,不匹配任何元素)://*[text()='match']在删除前导和尾随空格后,