【发布时间】:2013-11-23 00:43:12
【问题描述】:
我在通过正则表达式时遇到了一些困难。我的表达式应该验证一个 url。对于协议,它将允许三个值:http、https 和 ${protocol}。
所以,这里有一些 VALID url 的例子:
- http://someurl.com
- https://someurl.com
- ${protocol}://someurl.com
到目前为止,前两个通过我当前的正则表达式,但 ${protocol} 不会通过。有人可以帮我调试一下,看看为什么我的 ${protocol} 没有通过吗?
到目前为止,这是我的 RegExp:
var urlRegEx = new RegExp('(\$\{protocol\}|http(s)?)://(([A-Za-z0-9-]+\.)*([A-Za-z0-9-]+\.[A-Za-z0-9]+))+((/?)(([A-Za-z0-9\._\-]+)(/){0,1}[A-Za-z0-9.-/]*)){0,1}', 'i');
【问题讨论】:
-
使用
RegExp时,所有反斜杠必须写两次:(\\$\\{protocol等 -
谢谢!那工作得很好。你摇滚!
-
@thg435 回答这个问题?
标签: javascript regex