2015-04-05 73 views
0

我試圖引入nokogiri文件中搜索電子郵件地址,這樣如何在Nokogiri文檔中搜索regexp?

def search_mail(link) 
    doc = Nokogiri::HTML(open(link)).to_s 
    mail = doc.scan(/[A-Z0-9._%+-][email protected][A-Z0-9.-]+\.[A-Z]{2,4}/i) 
    end 

但這種方法是太長了,是有可能做同樣的事情,只是沒了文檔轉換成字符串?

回答

0

好吧,如果你輸入的是HTML,有很好的機會電子郵件將是一個標籤內,很可能以「電子郵件地址」,因此,我們可以這樣做:

tags = [] 
doc = Nokogiri::HTML(open(link)) 
doc.xpath("//a/@href[starts-with(.,'mailto')]").each do |elem| 
    tags << elem.value 
end 

p tags 

這將發現輸出的所有電子郵件使用'mailto'將其轉換爲元素。

+0

謝謝你的回答,但並不總是一封電子郵件說明'mailto' – wweare 2015-04-05 15:33:07