我将实现正则表达式来捕获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+&@#/%=~_()|]
答案 0 :(得分:1)
This regular expression gruber将匹配所有网址。只需使用" g" (全局)修饰符,以便它可以找到多个实例。