求javascript验证用户名,用户名有字母、数字、下划线组成,不能以数字开头 5
5个回答
展开全部
<p>使用正则校验是最好的一种方式</p><pre t="code" l="js">var str = "username";<br /><br />// 第一个 ^ 表示从开始位置匹配<br />// [a-zA-Z_] 表示匹配第一个非数字的字符,如果只想匹配字母,可以写成 [a-zA-Z]<br />// \w 表示匹配任何字类字符,包括下划线。与“[A-Za-z0-9_]”等效<br />// 最后一个 * 表示零次或多次匹配前面的 \w<br />// 下面这个正则匹配的规则就是以 非数字开头,至少长度为1的用户名<br />// 例如:"u" "user" "user1" "username123" "user123name"<br />// 上面这些都是能被匹配到的<br />var regEx = /^[a-zA-Z_]\w*/;<br /><br />// 如果想限制用户名的长度,比如 6-12 个字符<br />// 那么可以使用 {5,12},匹配 \w 5-12次<br />// 加上最开头的一个字符,总共就是6-12的长度<br />var regEx1 = /^[a-zA-Z_]\w{5,12}/;<br /><br />if (regEx.test(str)) {<br /> // 符合规则的用户名<br />}</pre>
展开全部
写了一个。希望对你有帮助:
<script>
var a= "zeee1334"
var reg = /^[a-zA-Z_][a-zA-Z0-9_]{6,}/;
console.log(reg.test(a));
</script>
追答
解决了吗
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
var a = 'yourstring';
/^[a-zA-Z_][0-9a-zA-Z_]{0,}$/.test(a);
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
var name = "yourUserName";
//如果首位是数字或者有字母数字下划线以外的字符,返回true
var reg = /^\d{1}|(\W+)$/;
if (reg.test(name)) {
console.log("用户名由字母、数字、下划线组成,且不能以数字开头");
return;
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
<script>
var name= "asdjfaljsd222__"
var reg = /^[a-zA-Z_][a-zA-Z0-9_]{2,}/;
console.log(reg.test(name));
</script>
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询