草庐IT

ruby yaml ypath 像 xpath?

全部标签

xml - XPath 语法 - 如何在复杂的位置路径中使用 position()

我正在编写一个递归算法来为给定元素生成唯一的最小XPath。主要思想是允许在一个文档中选择一个元素(即PC上chrome中的html元素)并能够在类似文档中找到相应的元素(即移动版本中的相同站点)。在此过程中,我需要为整个给定文档生成完整的XPath字符串,即对于给定节点,遍历整个树并将所有节点及其所有属性附加到字符串。例如,对于以下文档(需要的元素用“*”标记):**我的代码生成的XPath://*[@id='go_button'and@text='Go'andparent::*[child::*[@id='url_text_field']andchild::*[@id='back_

xml - XPath 2.0 - 1.0 等效?

我在生成有效的XPath1.0等效于一个有效的2.0示例时遇到了麻烦,它会产生相同的结果(而且,事实上,不会失败)。我必须使用以前版本的原因是PHP不支持XPath2.0。我的xml看起来像:我想获取element节点的value属性,其中祖父container节点具有属性id等于1或3。我还想将上述id属性连接到相应的elementvalue属性。如果前两个语句不完全可读(这些天我的英语有点生疏),这就是我想要实现的:1:03:1格式为:[containerid]:[elementvalue]我编写的有效XPath2.0路径给出了预期的结果://container[@id=1or@i

xml - 在 xmlstarlet 上使用 xpath 检索 XML 元素的所有属性名称

我可以看到如何检索所有属性值:xmlsel-t-v"//element/@*"但我想获取所有属性名称。我可以通过xmlsel-t-v"name(//x:mem/@*[3])"获取第n个名称,它返回第三个属性名称。但是xmlsel-t-v"name(//x:mem/@*)"不起作用(仅返回第一个属性名称)...有没有办法获取所有属性名称? 最佳答案 使用-t和-m定义模板匹配,然后使用-v应用另一个XPath表达式。$xmlsel-T-t-m"//mem/@*"-v"name()"-ninput.xml应用于此输入XML时:将打印:y

xml - xml :lang? 的 XPath 测试属性自轴失败

上下文是一个XSLT身份转换因此,我希望删除属性xml:lang。 最佳答案 您应该已经看到如下所示的警告:Warning!Theselfaxiswillneverselectanyelementnodeswhenstartingatanattributenode您可以改为测试属性的name():这将根据要求有效地从abstract中删除xml:lang属性。 关于xml-xml:lang?的XPath测试属性自轴失败,我们在StackOverflow上找到一个类似的问题:

xml - 需要解释 XPath 语法

谁能解释一下下面写的XPath语法:xmlDoc.documentElement.selectNodes("//*/Expression[.!='']")基本上,我需要澄清上述语法的参数路径。 最佳答案 选择所有元素:不是根元素并且有非空值//*/-这意味着除root之外的任何用户Expression-元素名称[.!='']-这意味着当前节点值不为空,即当前节点.不是!=空'' 关于xml-需要解释XPath语法,我们在StackOverflow上找到一个类似的问题:

c# - 无法计算出 XPath 计数表达式结果。 C# xml Web 服务

---BruceGanek99MainStreetCranstonRI02910-GovernorChafee82SmithSt#115ProvidenceRI02903-1121--JETSWEATERN.Y.JetsSweatshirt10.50221.00-MGreen-JETSWEATERN.Y.JetsSweatshirt7.50322.50-SWhite-JETSFLASHLIGHTN.Y.JetsFlashlight5.0015.00--WaltDisneyDisneyWorldHotelOrlandoFL32801-WaltDisneyDisneyWorldHotelO

php - 使用 SimpleXML 和 xpath 访问 XML 节点值

有很多这样的问题,所以请原谅我。我都读过了。我有以下使用命名空间http://www.columbasystems.com/cpng/xmlviewer/cal/1-0/的XML文档:http://events.manchester.ac.uk/f3vf/calendar/tag:manchester_museum/view:list/p:q_details/calml.xml我正在尝试使用SimpleXML解析此文档。下面的示例代码尝试从下面访问标题节点“DiscoveryCenter”的值。even:b9v-ib270yqf-nmn54kDiscoveryCentre...PHP:

xml - XPath表达式含义

我是XPath的新手,希望您考虑以下表达式,其中n是一个元素://n[parent::nandchild::n][]中的表达式是否意味着n的父子节点必须相同?还是我完全错了?谢谢。 最佳答案 Doestheexpressionin[]meanthattheparentandchildnodeofnmustbethesame?你的陈述是否正确取决于你所说的“相同”是什么意思。如果“相同”是指“相同”,那么该陈述显然是不正确的。一个节点不能同时是某物的父节点和子节点。另一方面,如果您打算写“具有相同的名称”,那么它是正确的。表达式//n

c# - XPATH 查询以从存储在 SQL Server 数据库列中的 XML 中获取数据

我将XML数据存储在SQLServer数据库中的一列中。Piston1.2PistonRing2Piston1.5有没有一种方法可以获得以下格式的结果?------------------------------Product|Count------------------------------Piston|2PistonRing|1------------------------------我尝试使用Xpath进行计数,但不确定是否可以按产品分组然后进行计数。我正在寻找类似(在SQL查询中)的东西SELECTProduct,Count(Product)FROMABCGROUPBYP

python - 直接前一个兄弟的 xpath

XMLnodeatext1nodeatext2nodebtext1nodebtext2如果有的话,我想获取nodea或nodeb的第一个前置兄弟p标签。例如,对于上面的xml,各个节点的前面的兄弟节点是nodea前面的siblingnodeatext1nodeatext2nodeb之前的siblingnodebtext1nodebtext2我已经尝试了下面的xpath,但它给了我前面的nodea而不是nodeb的p标签。nodeb=xml.find('nodeb')nodeb.xpath('preceding-sibling::p[not(preceding-sibling::node