我需要使用jquery在我的asp.net mvc(C#)应用程序中实现一个正则表达式。
我有一个登录表单,我需要使用必需的正则表达式验证字段。
更清楚地说,我的登录表单中包含Username
和Password
字段。我需要首先根据需要进行验证,如果用户输入了任何值,那么我需要使用正则表达式进行验证。
例如:如果输入的值无效,则Username
必须至少包含5个字符且无特殊字符。应该说Please enter a valid Username with atleast 5 characters and no special characters
。
密码必须至少5个字符且至少1个特殊字符,1个数字,如果输入的值无效,则应说Please enter a valid password with atleast 5 characters and should contain one numer and special character
所以我需要为每个字段提供自定义消息,以便进行必要和正则表达。
是否有常用的插件或函数用于jquery中的正则表达式?
答案 0 :(得分:2)
用户名:
/^\w{5,}$/
五个或更多单词字符(a-z,A-Z,0-9和下划线)
密码:
/^(?=.*\d)(?=.*[a-z])(?=_|\W).{5,}$/i
一串至少五个字符,最少一位,一个字母(不区分大小写)和一个特殊字符。
答案 1 :(得分:1)
你不在jQuery中做正则表达式。它内置于JavaScript本身。当然,jQuery的验证插件使用正则表达式。
退房:http://docs.jquery.com/Plugins/Validation
如果不验证,大多数插件都会让您输入要显示的自定义消息。
答案 2 :(得分:1)
在SO中找到一个常见的直接方法实现:
$.validator.addMethod(
"regex",
function(value, element, regexp) {
if (regexp.constructor != RegExp)
regexp = new RegExp(regexp);
else if (regexp.global)
regexp.lastIndex = 0;
return this.optional(element) || regexp.test(value);
},
"Please check your input.");
可以用作:
$('#signinForm').validate({
rules: {
Username: {
required: true,
regex: "YOURREGULAREXPRESSION"
}
},
messages: {
Username: {
required: "Enter the Username",
regex: "Enter the valid Username"
}
}
});
因此,我们可以使用自定义消息进行尽可能多的自定义验证(正则表达式)。