You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

用户名正则表达式优化需求:限制单个特殊字符且首字符非特殊字符

正确的正则表达式写法

针对你的需求,调整后的正则表达式如下:

regex = r'^(?=.{6,15}$)(?=.*[a-z])(?!.*[-@_].*[-@_])[a-z0-9][a-z0-9@-_]*$'

规则拆解

  • (?=.{6,15}$):限制用户名总长度在6-15位之间
  • (?=.*[a-z]):确保用户名包含至少一个小写字母
  • (?!.*[-@_].*[-@_]):通过负向预查禁止出现2个及以上特殊字符(特殊字符范围为@、-、_)
  • [a-z0-9]:强制首字符为小写字母或数字,避免特殊字符开头
  • [a-z0-9@-_]*:允许后续字符为小写字母、数字或单个特殊字符(已通过前面的预查限制数量)

验证示例

  • 有效输入:user@site → 符合所有规则,匹配成功
  • 无效输入:user@@site → 包含两个特殊字符,匹配失败
  • 无效输入:@usersite → 特殊字符作为首字符,匹配失败

内容的提问来源于stack exchange,提问作者Satheesh Kumar

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.08 09:56:05