考虑以纯文本格式嵌入的网址,例如http://example.com/。尽管.
是RFC 3986的sub-delims
是一个未保留的字符,但Stack Overflow足够聪明,知道我并不意味着将句点作为URL的一部分包含在内。
同样,如果我输入http://example.org/,Stack Overflow足够聪明,知道我并不意味着包含逗号,即使作为,
类的成员,{{ 1}}是一个有效的路径字符。
Ruby URI.extract()
,正如this和this高度评价的答案中所建议的那样,并不像Stack Overflow那样聪明。
2.2.5 :002 > URI.extract('...such as http://example.com/.')
=> ["http://example.com/."]
2.2.5 :003 > URI.extract('Likewise, if I type http://example.org/, Stack Overflow...')
=> ["http://example.org/,"]
有更聪明的选择吗?