2011-09-07 92 views
0

我怎样才能使用Ruby /引入nokogiri日期从这个定义的关键字后一个字:越来越像“名Prasaanth”

<p class="class1"> 
        Expires 15/07/2011. that is my graduation day.</p><p>something else here</p> 

我的意图是恼火的date.i读这表明我的论坛使用类似的东西:

exp = node.at('[text()="Expires"]').next.text 
return exp 

但它不工作,请帮助。

回答

1

这:因为它是寻找一种是完全"Expires"和你正在寻找匹配/^\s*Expires/文本节点文本节点

exp = node.at('[text()="Expires"]') 

将无法​​正常工作。你可能会找到你的<p>与一堆讨厌XPath或者你可以找到段落,并在Ruby中进行搜索:

doc = Nokogiri::HTML(your_html) 
node = doc.search('p').find { |n| n.content[/^\s*Expires/] } 
return nil if(!node) 
exp = node.content.match(/\d{2}\/\d{2}\/\d{4}/) 
return exp ? exp[0] : nil