为了账号安全,请及时绑定邮箱和手机立即绑定

为用户名验证系统制作 preg_match 的问题

为用户名验证系统制作 preg_match 的问题

PHP
千万里不及你 2023-05-26 16:11:22
我制作了这个正则表达式代码:/^([a-zA-Z\d]+[_]?+[a-zA-Z\d]){3,12}$/我希望表达为:只允许它以任何字母或数字开始/结束中间允许低分只有 3 到 12 个字符当我测试一个超过 12 个字符的名字时,它仍然给我一个肯定的结果。我该如何解决?
查看完整描述

1 回答

?
拉莫斯之舞

TA贡献1820条经验 获得超10个赞

你可以使用

^(?=.{3,12}$)[a-zA-Z\d]+(?:_[a-zA-Z\d]+)?$

细节

  • ^- 字符串的开始

  • (?=.{3,12}$)- 长度允许从 3 到 12 个字符

  • [a-zA-Z\d]+- 1+ 个字母或数字

  • (?:_[a-zA-Z\d]+)?- 一个可选的序列_和 1+ 个数字/数字

  • $- 字符串结束


查看完整回答
反对 回复 2023-05-26
  • 1 回答
  • 0 关注
  • 98 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信