javascript - 网址正则表达式验证

标签 javascript regex

我做到了:

 /^(http[s]?://){0,1}(www.){0,1}[a-zA-Z0-9\.\-]+\.[a-zA-Z]{2,5}[\.]{0,1}

并用验证器检查了它,但在我的页面上它不起作用:

var re = /^(http[s]?://){0,1}(www.){0,1}[a-zA-Z0-9\.\-]+\.[a-zA-Z]{2,5}[\.]{0,1};
if (!re.test(url)) { 
    alert("url error");
    return false;
}

我收到这个错误

Webpage error details

User Agent: Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 6.1; WOW64; Trident/4.0; SLCC2; .NET CLR 2.0.50727; .NET CLR 3.5.30729; .NET CLR 3.0.30729; Media Center PC 6.0; .NET4.0C; .NET4.0E)
Timestamp: Tue, 30 Nov 2010 14:23:10 UTC


Message: Expected ')' in regular expression
Line: 781
Char: 23
Code: 0
URI: http://*************************

最佳答案

你必须转义你的特殊字符(/ 和那个 . 在这种情况下 www 之后)并注意丢失的尾随 /,像这样:

var re = /^(http[s]?:\/\/){0,1}(www\.){0,1}[a-zA-Z0-9\.\-]+\.[a-zA-Z]{2,5}[\.]{0,1}/;
if (!re.test(url)) { 
    alert("url error");
    return false;
}

关于javascript - 网址正则表达式验证,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4314741/

相关文章:

javascript - 如何将整个对象传递给 md-autocomplete Angular 4 的输入

javascript - 将 AJAX 与 PHP 循环创建的表单结合使用

asp.net - Membership Generate Password 字母数字密码?

javascript - CKEditor:忽略其 config.js

javascript - 如何跨多个选项卡保存 greasemonkey 输出

javascript - 如何在 Atom 中禁用正则表达式

java - replaceAll 的问题(我想删除所有出现的 [*])

ruby - 正则表达式匹配不包括第一个字符的字符串

regex - 从终端中的命令输出中提取单行

regex - AND/OR 运算符在正则表达式中如何表示?