Jquery值匹配正则表达式
我试图通过JQueryvalidation电子邮件的输入:
我的JQuery
/* */
即使我输入了example@example.com,也不会发出警报。 我已经尝试过.test()和.match(),我做错了什么?
- 将字符串传递给RegExp或使用
//
语法创建正则表达式 - 调用
regex.test(string)
,而不是string.test(regex)
所以
jQuery(function () { $(".mail").keyup(function () { var VAL = this.value; var email = new RegExp('^[A-Z0-9._%+-]+@[A-Z0-9.-]+\.[AZ]{2,4}$'); if (email.test(VAL)) { alert('Great, you entered an E-Mail-address'); } }); });
把它改成这个:
var email = /^[A-Z0-9._%+-]+@[A-Z0-9.-]+\.[AZ]{2,4}$/i;
这是一个传递i
标志的正则表达式文字,表示不区分大小写。
请记住,电子邮件地址validation很难 (在掌握正则表达式结尾处有4或5页的正则表达式certificate这一点)并且您的表达式肯定不会捕获所有有效的电子邮件地址。