Вот, пожалуйста, рабочий код :) удаляет префикс http / s в отображаемой ссылке также
обратите внимание, что вы должны выполнить регулярное выражение для uri + "", чтобы он правильно перехватывал ссылки ... и тогда вам нужнодобавить пробел в начале, чтобы перехватить ссылки в конце, у которых нет завершающего пробела ...
thisString = yourString+" " # add space to catch link at end
URI.extract(thisString, ['http', 'https']).each do |uri|
linkURL = uri
if(uri[0..6] == "http://")
linkURL = uri[7..-1]
elsif(uri[0..7] == "https://")
linkURL = uri[8..-1]
end
thisString = thisString.gsub( uri+" ", "<a href=\"#{uri.to_s}\">#{linkURL.to_s}</a> " )
end