首页 > 解决方案 > 带有 javascript 验证的自定义用户名

问题描述

我希望用户创建具有某些条件的用户名。

用户名的长度必须为 6 个或更多字符。

它可以包含下划线,但不是必需的。

它可以包含 az 或 AZ 或 0-9 个字符。

目前,这就是我要验证的内容

var usern=  /^[a-zA-Z0-9_]{6,}[a-zA-Z]+[0-9]*$/;

但如果用户名是 joseph_123、joseph123_ 或 jose123,则用户名不起作用

标签: javascript

解决方案


您可以使用\w 元字符。匹配 az、AZ、0-9 和 _(下划线)。

^\w{6,}$

const TESTS = ['joseph_123', 'joseph123_', 'jose123' ,'1234', 'á123456', '1223456á', 'abc-def']

TESTS.forEach((uname) => {
  console.info(uname + ': ' + uname.match(/^\w{6,}$/))
})

https://www.w3schools.com/jsref/jsref_regexp_wordchar.asp


推荐阅读