Мне нужно сделать программу в рубине, которая, учитывая адрес в Интернете по аргументу командной строки (argv), возвращает список найденных изображений (изображения в HTML отвечают на тег "") и список всех ссылок, которые являются интернет-адресами для ссылки на другие страницы (ссылки в HTML отвечают на метку)
Пока отделите строку кода страницы со знаками> и
Код на данный момент
require 'net/http'
pagina= Net::HTTP.get(ARGV[0], '/index.html')
xx = pagina.split(/[<,>]/)
puts xx
puts xx.scan(/a href=/)
Не используйте регулярные выражения для анализа HTML.
Используйте парсер HTML. Например, Нокогири:
require 'net/http'
require 'nokogiri'
pagina = Net::HTTP.get(ARGV[0], '/index.html')
Nokogiri::HTML(pagina).css('a').map { |link| link['href'] }
< a alt="Image" href="/example.png" />
будет совершенно невидимым для вашего подхода с использованием регулярных выражений. Используйте правильную библиотеку разбора, потому что HTML обманчиво сложен.