用正则表达式精心制作的网址

时间:2010-06-04 11:14:40

标签: ruby-on-rails regex string

我有一个字符串,可能包含带链接的文本。 我使用这些说明来详细说明:

message = message.gsub(/http[s]?:\/\/[^\s]+/) do |m|      
      replace_url(m)
    end

如果字符串是"http://www.youtube.com/watch?v=6zToqLlM8ms&playnext_from=TL&videos=qpCvM5Ocr3M&feature=sub" 说明有效。

但是如果字符串是"hi my video is http://www.youtube.com/watch?v=6zToqLlM8ms&playnext_from=TL&videos=qpCvM5Ocr3M&feature=sub" 不起作用

为什么?

我该怎么办?

感谢

1 个答案:

答案 0 :(得分:0)

Beucase这与模式不匹配。在url之前添加表达式以在url之前捕获一些垃圾。

您还可以尝试将正则表达式匹配到每个单词。因为url总是一个单词分隔。