为什么生成的ruby正则表达式在实际代码中不起作用?

时间:2013-08-26 11:56:15

标签: ruby nokogiri

我找到了site,我可以在其中生成ruby正则表达式。 所以基本上你输入文字并点击你想要提取的部分:

enter image description here

所以我试了一下:

product.css('.crAvgStars .swSprite span').text[/([+-]?\\d*\\.\\d+)(?![-+0-9\\.])/, 1]

获取4.4但获得nil

正则表达式无法正常工作还是我的方法不正确?

1 个答案:

答案 0 :(得分:1)

试试这个:

s = "4.4 out of 5 stars"
p s[/([+-]?\d*\.\d+)(?![-+0-9\.])/]
# >> "4.4"

您可以通过这种方式找到Regexp.new

Regexp.new('([+-]?\\d*\\.\\d+)(?![-+0-9\\.])')
# => /([+-]?\d*\.\d+)(?![-+0-9\.])/