在jQuery中,是否有一个函数/插件可以用来匹配字符串中给定的正则表达式?
例如,在电子邮件输入框中,我收到一个电子邮件地址,并希望查看它是否格式正确.我应该使用什么jQuery函数来查看我的验证正则表达式是否与输入匹配?
我已经google了解决方案,但我找不到任何东西.
如果要基于正则表达式搜索某些元素,可以使用该filter
函数.例如,假设您要确保在所有输入框中,用户只输入了数字,那么让我们找到所有不匹配的输入并突出显示它们.
$("input:text") .filter(function() { return this.value.match(/[^\d]/); }) .addClass("inputError") ;
当然如果它只是这样,你可以使用表单验证插件,但是这个方法可以应用于你喜欢的任何类型的元素.显示我的意思的另一个例子:查找id
匹配的所有元素/[a-z]+_\d+/
$("[id]").filter(function() { return this.id.match(/[a-z]+_\d+/); });
我正在使用jQuery和JavaScript,它对我来说很好用:
var rege = /^([A-Za-z0-9_\-\.])+\@([A-Za-z0-9_\-\.])+\.([A-Za-z]{2,4})$/; if(rege.test($('#uemail').val())){ //do something }
我相信这样做:
http://bassistance.de/jquery-plugins/jquery-plugin-validation/
它有内置的URL和电子邮件地址等模式,我认为你也可以使用自己的模式.
除非您正在寻找特定的东西,否则您已经可以使用常规Javascript和字符串进行正则表达式匹配.
例如,您可以通过类似的方式使用字符串进行匹配...
var phrase = "This is a phrase"; phrase = phrase.replace(/is/i, "is not"); alert(phrase);
除了正则表达式匹配之外,还有其他什么东西需要吗?