如何将不区分大小写的值与XPath匹配

如何将不区分大小写的值与XPath匹配,xpath,scrapy,Xpath,Scrapy,我有一个XPath,我试图用它来匹配具有name属性的meta标记和包含单词“keyword”的值,而不考虑大小写。基本上,我试图匹配: <meta name="KEYWORDS"> <meta name="Keywords"> <meta name="keywords"> 我使用的是Scrapy,它是内置的选择器,但当我尝试使用这个XPath时,会出现一个错误“无效XPath:…”。 我做错了什么?做我想做的事情的正确方法是什么?剪贴选择器构建在libxm

我有一个XPath,我试图用它来匹配具有name属性的meta标记和包含单词“keyword”的值,而不考虑大小写。基本上,我试图匹配:

<meta name="KEYWORDS">
<meta name="Keywords">
<meta name="keywords">
我使用的是Scrapy,它是内置的选择器,但当我尝试使用这个XPath时,会出现一个错误“无效XPath:…”。
我做错了什么?做我想做的事情的正确方法是什么?

剪贴选择器构建在libxml2库之上,而libxml2库不支持XPath 2.0。至少libxslt不能确定

可以使用XPath 1.0 translate()来解决此问题。一般来说,它看起来像:

translate(yourString, 
          'ABCDEFGHIJKLMNOPQRSTUVWXYZ', 
          'abcdefghijklmnopqrstuvwxyz')

不要裁剪错误消息!我想这是因为您使用的是XPath2.0函数。使用
translate()。谢谢你的回答。
translate(yourString, 
          'ABCDEFGHIJKLMNOPQRSTUVWXYZ', 
          'abcdefghijklmnopqrstuvwxyz')