Способ получения всех совпадений шаблона на ruby
Добрый день.
Такой вопрос. В руби метод match возращает первое вхождение в шаблон и не проверяет, есть ли еще совпадения? Каким образом можно добиться, чтобы вернуть все, что попалось под критерии шаблона? Возможно ли это сделать с match или нужен какой-то другой метод?
Вот для примера код:
require 'open-uri'
require 'nokogiri'
def connect(source)
page = Nokogiri::HTML(open(source))
end
emails =[]
email_reg = /^[-\w.]+@([A-z0-9][-A-z0-9]+\.)+[A-z]{2,4}/
source = 'http://www.zooton.net/ind7.html'
begin
str = email_reg.match(connect(source))
rescue OpenURI::HTTPError
puts "Не правильный имейл"
end
emails.push str.to_s
p emails
Источник: Stack Overflow на русском