XML文档中的匹配大小写和完全匹配与XPath

时间:2012-07-18 05:36:24

标签: c# xml visual-studio-2008 xpath

如何匹配xml节点数据中的大小写。我需要搜索xml节点数据并将给定的字符串与xml节点数据匹配。 需要匹配:

  • 比赛案例
  • 完全匹配

这方面的任何帮助都热烈欢迎。

3 个答案:

答案 0 :(得分:1)

函数lower-case()upper-case()仅适用于XPath 2.0及更高版本。

在XPath 1.0中,对于不区分大小写的字符串比较,请使用

translate($string1, 'ABCDEFGHIJKLMNOPQRSTUVWXYZ', 'abcdefghijklmnopqrstuvwxyz')
=
 translate($string2, 'ABCDEFGHIJKLMNOPQRSTUVWXYZ', 'abcdefghijklmnopqrstuvwxyz')

其中$string1$string2是指定要比较的字符串的表达式。

答案 1 :(得分:0)

您可能需要查看XPath规范的第7.6.2节:

http://www.w3.org/TR/xpath-functions/#func-matches

使用fn:matches函数编写正则表达式以匹配所需的目标字符串。

干杯,

答案 2 :(得分:0)

尝试lower-case or upper-case字符串函数。这与不区分大小写的并不完全相同,但希望它足够接近:

//YourNode[lower-case(@title)='anders rostgaard bystru']

请参阅this post了解其他解决方案。