【发布时间】:2021-04-17 04:48:47
【问题描述】:
我需要为以下条件验证用户的用户名。
- 用户名可以包含字母、数字或两者的组合。
- 用户名不得包含@$%^&*()+='~-_"等特殊字符
有效示例: 测试123
123测试
T123est
无效示例:
测试@%^&123
@#$测试
Test123@#$%^
下面是我试过的表达方式:
/[a-zA-Z\d]+/
/[^@$%^&()+=‘~-_"]/
【问题讨论】:
标签: regex
我需要为以下条件验证用户的用户名。
有效示例: 测试123
123测试
T123est
无效示例:
测试@%^&123
@#$测试
Test123@#$%^
下面是我试过的表达方式:
/[a-zA-Z\d]+/
/[^@$%^&()+=‘~-_"]/
【问题讨论】:
标签: regex
应该这样做:
/^[A-Za-z\d]+$/
^ 和 $ 标记,字符串的开始和结束,并且需要不匹配输入的一部分。
编辑:根据评论者的建议进行了更新,因为我不记得下划线是 \w
的一部分【讨论】:
\w 是 [A-Za-z0-9_] 的简写,因此包含数字 和 下划线。我想你需要^[A-Za-z\d]+$。