【发布时间】:2010-11-25 09:34:32
【问题描述】:
我正在寻找一个接受以下网址的正则表达式:
http://www.example.com
www.example.com
这是我目前所拥有的,但它的正则表达式不匹配没有 http:// 或 https:// 或 ftp:// 的 URL:
regexp = /(ftp|http|https):\/\/(\w+:{0,1}\w*@)?(\S+)(:[0-9]+)?(\/|\/([\w#!:.?+=&%@!\-\/]))?/;
如何使协议成为可选协议?
【问题讨论】:
-
example.pl: 波兰的网站还是 Perl 脚本? -
不幸的是,在 OP 的情况下不是。它将被正则表达式消耗或不消耗。 RFC 3986(链接指向正则表达式以解析 URL)有理由强制执行方案或 `\` 部分。虽然我理解需要找到这样的东西(见the Linkification addon for FF)
-
另请参阅stackoverflow.com/questions/4252778/… 以获得非常通用的解决方案。
标签: javascript regex