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

使用可选模式检查用户名

使用可选模式检查用户名

PHP
开满天机 2024-01-19 15:00:17
我想检查 PHP 中的用户名是否满足以下条件:必须以字母开头(一个或多个)可以包含字母(可选,任意长度)、数字(可选,任意长度)或下划线(可选,仅一个)必须以字母数字字符结尾字母不区分大小写如何使用preg_match()函数匹配此模式?这是我尝试过的模式。但我不知道如何设置可选量词:^[a-z][a-z0-9_]*[a-z0-9]$
查看完整描述

1 回答

?
慕田峪7331174

TA贡献1828条经验 获得超13个赞

您的模式几乎可以工作,但它允许多个下划线。为了防止这种情况,您可以使用以下模式:


^[a-z][a-z0-9]*_?[a-z0-9]+$

细节:


^          # Beginning of the string.

[a-z]      # Matches exactly one English letter.

[a-z0-9]*  # Matches zero or more English alphanumeric character (i.e., letter or digit).

_?         # Matches zero or one underscore characters.

[a-z0-9]+  # Matches one or more English alphanumeric characters.

$          # End of the string.

请注意,为了使其不区分大小写,您需要使用修饰符i(即/pattern/i)或使用a-zA-Z而不是仅a-z在所有字符类中使用。


查看完整回答
反对 回复 2024-01-19
  • 1 回答
  • 0 关注
  • 68 浏览

添加回答

举报

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