请原谅我的无知,但我真的需要帮助,我需要这个正则表达式:[A-Za-z0-9]+\s?[A-Za-z0-9]+
(一个允许在中间有一个空格的用户名,但不能在开头或结尾有空格),但是限制字符总数在3到30之间。
我尝试使用负向预查来调整这个答案,但迄今为止还没有成功。
它必须是一个正则表达式,不能使用jQuery或其他任何东西。
请原谅我的无知,但我真的需要帮助,我需要这个正则表达式:[A-Za-z0-9]+\s?[A-Za-z0-9]+
(一个允许在中间有一个空格的用户名,但不能在开头或结尾有空格),但是限制字符总数在3到30之间。
我尝试使用负向预查来调整这个答案,但迄今为止还没有成功。
它必须是一个正则表达式,不能使用jQuery或其他任何东西。
^(?=.{3,30}$)[A-Za-z0-9]+(?:\s[A-Za-z0-9]+)?$
^
- 字符串开头(?=.{3,30}$)
- 可以有3到30个字符(除了换行符,将.
替换为[A-Za-z0-9\s]
更具体)[A-Za-z0-9]+
- 1个或多个字母数字字符(?:\s[A-Za-z0-9]+)?
- 可选的(1或0次)出现
\s
- 空格[A-Za-z0-9]+
- 1个或多个字母数字符号$
- 字符串结尾。您可以使用:
(?=^[A-Za-z0-9]+\s?[A-Za-z0-9]+$).{3,30}
请查看regex101.com上的演示,它将匹配:
username123 # this one
user name 123 # this one not (two spaces!)
user name123 # this one
u sername123 # this one
username123 # this one not (space in the beginning!)