检测字符串中的url

时间:2014-08-10 12:57:34

标签: java regex

我将实现正则表达式来捕获strin中的url。为此,我编写了正则表达式,但它只捕获了预期输入的子部分而不是全部。如何修复它以便它可以捕获所有预期的输入并将它们标记为url?

预期输入

ftp://joe:password@ftp.filetransferprotocal.com
http://www.google.com/search?q=good+url+regex&rls=com.microsoft:*&ie=UTF-8&oe=UTF-8&startIndex=&startPage=1
https://some-url.com?query=&name=joe?filter=.#some_anchor
www.some-url.com?query=&name=joe?filter=.#some_anchor
www.some-url.edu?query=&name=joe?filter=.#some_anchor
www.some-url.gov?query=&name=joe?filter=.#some_anchor
www.some-url.co.uk?query=&name=joe?filter=.#some_anchor
www.some-url.xxx?query=&name=joe?filter=.#some_anchor
ww2.some-url.com?query=&name=joe?filter=.#some_anchor
http://en.wikipedia.org/wiki/Björn_Andrésen

我的代码是\(?\bhttp://[-A-Za-z0-9+&@#/%?=~_()|!:,.;]*[-A-Za-z0-9+&@#/%=~_()|]

1 个答案:

答案 0 :(得分:1)

由GitHub用户编写的

This regular expression gruber将匹配所有网址。只需使用" g" (全局)修饰符,以便它可以找到多个实例。