加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

ruby – 如何创建一个nokogiri不区分大小写的Xpath选择器?

发布时间:2020-12-16 20:43:50 所属栏目:百科 来源:网络整理
导读:我使用nokogiri选择“keywords”属性,如下所示: puts page.parser.xpath("//meta[@name='keywords']").to_html 我正在使用的其中一个页面有关键字标签,首字母“K”,这促使我使查询不区分大小写. meta name="keywords" AND meta name="Keywords" 所以,我的问
我使用nokogiri选择“keywords”属性,如下所示:
puts page.parser.xpath("//meta[@name='keywords']").to_html

我正在使用的其中一个页面有关键字标签,首字母“K”,这促使我使查询不区分大小写.

<meta name="keywords"> AND <meta name="Keywords">

所以,我的问题是:使nokogiri选择大小写不正确的最好方法是什么?

下面的编辑Tomalak的建议对于这个具体的问题很有用.我也想使用这个例子来帮助我了解nokogiri,并且有几个问题,我想知道并没有成功搜索.例如,正确的’伪类’Nokogiri Docs适合这样的问题吗?

我也很好奇,在nokogiri的比赛?()方法.我没有找到任何关于该方法的澄清.它与XPath 2.0中的“匹配”概念有什么关系(因此可以用来解决这个问题)?

非常感谢.

解决方法

包装可读性:
puts page.parser.xpath("
  //meta[
    translate(
      @name,'ABCDEFGHIJKLMNOPQRSTUVWXYZ','abcdefghijklmnopqrstuvwxyz'
    ) = 'keywords'
  ]
").to_html

XPath 1.0中没有“小写”功能,所以你必须使用translate()这种东西.根据需要添加重音字母.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读