用户名的JavaScript正则表达式无空格

用户名的JavaScript正则表达式无空格,javascript,regex,Javascript,Regex,我正在寻求有关用户名的JavaScript正则表达式的帮助。基本上,我需要字母A-Z、数字、句点、破折号、下划线、美元符号、at符号、星号和感叹号,用户名可以长达30个字符。例如,不允许使用空格或逗号 允许的字符: [a-zA-Z0-9] . - _ $ @ * ! User.name=passes 用户名=失败 User,name=失败 用户名EEEEEEEEEEEEEEEEEEEEEEEEEEE=失败 以下各项应起作用: /^[a-zA-Z0-9.\-_$@*!]{3,30}$/ 请注

我正在寻求有关用户名的JavaScript正则表达式的帮助。基本上,我需要字母A-Z、数字、句点、破折号、下划线、美元符号、at符号、星号和感叹号,用户名可以长达30个字符。例如,不允许使用空格或逗号

允许的字符:

[a-zA-Z0-9]
.
-
_
$
@
*
!
  • User.name=passes
  • 用户名=失败
  • User,name=失败
  • 用户名EEEEEEEEEEEEEEEEEEEEEEEEEEE=失败

以下各项应起作用:

/^[a-zA-Z0-9.\-_$@*!]{3,30}$/
请注意,我还强制执行了3个字符的最小长度,将其更改为您实际需要的长度


jshiddle:

您可以使用
^[-\w\.\$\*!]{1,30}$
,其中
1
30
是您可以根据密码的最小长度更改的边界

\w
提供数字、字母和下划线的覆盖范围,然后是您允许的所有特殊字符。确保正确地转义特殊字符,因为在实际的正则表达式解析中使用了很多特殊字符


使用您提供的示例(以及一些其他示例),您可以看到正则表达式正在工作。

这看起来像一个基本正则表达式,您甚至知道字符范围的格式。什么挡住了你?