Xml 如何查找XPath为1.0的子字符串
我在XPATH 1.0中查找特定子字符串时遇到问题。此表达式将在代码审阅工具SonarQube中用于设置约束 这是我目前在XPATH 3.0中使用的表达式,我已经做了一些研究来找到转换,但是这个表达式在XPATH 3.0中的语法似乎与在1.0中的语法一样正确。我是忽略了什么还是只是误传了Xml 如何查找XPath为1.0的子字符串,xml,xpath,sonarqube,xpath-1.0,Xml,Xpath,Sonarqube,Xpath 1.0,我在XPATH 1.0中查找特定子字符串时遇到问题。此表达式将在代码审阅工具SonarQube中用于设置约束 这是我目前在XPATH 3.0中使用的表达式,我已经做了一些研究来找到转换,但是这个表达式在XPATH 3.0中的语法似乎与在1.0中的语法一样正确。我是忽略了什么还是只是误传了 //*[contains(.,'@example.com')] 据我所知,这使用XPATH 1.0自带的contains()函数来搜索它前面的任何/substant或self::node()/路径,以包含属性
//*[contains(.,'@example.com')]
据我所知,这使用XPATH 1.0自带的contains()函数来搜索它前面的任何/substant或self::node()/
路径,以包含属性example.com/*[contains(,“@example.com”)]
的意思“查找包含子字符串“@example.com”的具有文本内容的任何类型的节点。如果要“查找具有属性且其值中包含“@example.com”的节点”,您需要:
- 在任何属性中:
//*[contains(@*, "@example.com")]
//*[contains(@email, "@example.com")]
- 在特定属性中:
//*[contains(@*, "@example.com")]
//*[contains(@email, "@example.com")]
如果要获取所需的@属性的值
:
//*[contains(@email, "@example.com")]/@email
您能否将HTML示例与当前和所需的输出一起共享?@Andersson因此我试图实际解析一个XML文件,但下面是要解析的假设XML文件,如果找到子字符串,所需的输出将返回true约翰尼·戴普
我想让它捕捉到那封硬编码的电子邮件谢谢!这封邮件效果很好。答案非常翔实!