lib/wparser/inline/http.rb in wparser-0.0.2 vs lib/wparser/inline/http.rb in wparser-0.1.0

- old
+ new

@@ -1,19 +1,21 @@ -module Http - # (?<![.,?\!]) 1.8.7では後読みが出来ない、どーするか。 - def parse text - url_rex = %r! - \b - ( - http:// [-a-z0-9]+(\.[-a-z0-9]+)*\.(com|edu|info|net) \b +require 'wparser/parse' + +module Inlines + class Http < Parse + # (?<![.,?\!]) 1.8.7では後読みが出来ない、どーするか。 + def self.parse text + url_rex = %r! + \b ( - / [-a-z0-9_:\@&?=+,.\!/~*'%\$]*[^.,?\!] - )? - ) - !x - parse_text = text.gsub(url_rex){|s| "<a href=\"#$1\">#$1</a>"} - return text if parse_text == nil - parse_text - end + http:// [-a-z0-9]+(\.[-a-z0-9]+)*\.(com|edu|info|net) \b + ( + / [-a-z0-9_:\@&?=+,.\!/~*'%\$]*[^.,?\!] + )? + ) + !x - module_function :parse + @result = text.gsub(url_rex){|s| "<a href=\"#$1\">#$1</a>"} + super + end + end end