可以使用如下正则表达式来限制用户名:

/^(?!\d+$)[\u4e00-\u9fa5_a-zA-Z0-9]+$/u

解释:

  • ^ 表示字符串的开头
  • (?!\d+$) 表示后面不能全部是数字
  • [\u4e00-\u9fa5_a-zA-Z0-9]+ 表示中英文、数字和下划线至少出现一次
  • $ 表示字符串的结尾
  • /u 表示使用 Unicode 字符集匹配中文字符

示例代码:

const usernameReg = /^(?!\d+$)[\u4e00-\u9fa5_a-zA-Z0-9]+$/u;
const username = 'abc123_汉字';
if (usernameReg.test(username)) {
  console.log('用户名格式正确');
} else {
  console.log('用户名格式错误');
}
前端正则表达式:用户名限制中英文数字下划线,非纯数字

原文地址: https://www.cveoy.top/t/topic/mXmr 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录