How do I do a regex search in Nokogiri for text that matches a certain beginning?
hpricot, nokogiri, ruby
Solution
Use the xpath function `starts-with`:
value.xpath('//p[starts-with(@id, "para-")]').each { |x| puts x['id'] }
Problem
Given: ``` require 'rubygems' require 'nokogiri' value = Nokogiri::HTML.parse(<<-HTML_END) "<html> <body> <p id='para-1'>A</p> <div class='block' id='X1'> <h1>Foo</h1> <p id='para-2'>B</p> </div> <p id='para-3'>C</p> <h2>Bar</h2> <p id='para-4'>D</p> <p id='para-5'>E</p> <div class='block' id='X2'> <p id='para-6'>F</p> </div> </body> </html>" HTML_END ``` I want to do something like what I can do in Hpricot: ``` divs = value.search('//div[@id^="para-"]') ``` - How do I do a pattern search for elements in XPath style? - Where would I find the documentation to help me? I didn't see this in the rdocs.