【发布时间】:2017-08-19 13:26:06
【问题描述】:
此表达式必须遵守特定规则:
1.- 总共 2 到 8 个字符。
2.- 以大写开头。
3.- 包含小写和数字。
第一个和第二个应该很容易,但我无法让第三个工作。
这是我想出来的表达方式
([A-Z]+[A-Za-z0-9]*){2,8}
但它返回不正确的响应。正则表达式远非我的强项,这是我第一次在课外使用它们。
这是我的代码,如果有帮助的话
var expresion = /([A-Z]+[A-Za-z0-9]*){2,8}/;
var re = new RegExp(expresion);
var t = $('#code').val();
if (re.test(t)) {
console.log(t+' works');
} else {
console.log(t+' not working');
}
【问题讨论】:
-
根据regex 标签上的规则,也请使用javascript 进行标签。在不相关的评论中,如果这是真正的密码验证情况,请不要 - 它使密码 less 安全。
-
我不认为这是密码验证。这看起来更像是标识符命名约定(尽管通常也允许下划线)。
-
给定项目 2 和 3,最少 3 个字符:1,以大写开头,2 包含小写和数字 -- 即至少 3 个字符。
-
允许2个字符,怎么能满足大写开头,小写和数字都包含的要求?
标签: javascript regex