Rubyを使って文字列からURLの抜き出しを行う。

str = <<-EOS
  http site:
    http://example.com

  ftp site:
    ftp://ftp.example.com/

  https site:
    https://example.com
EOS

URI.extract を使うとよい。ただオプション無しで使うと誤検知も含め出てしまう。

p URI.extract(str)
#=> ["site:", "http://example.com", "site:", "ftp://ftp.example.com/", "site:", "https://example.com"]

その場合は第二引数に schema を指定してやると良い。

p URI.extract(str, ['http', 'https'])
#=> ["http://example.com", "https://example.com"]

参考