我正在尝试创建一个正则表达式模式,允许用户创建具有以下规范的用户名.(就这个初始模式而言,我只使用标准的美式英语字母表.
第一个字符必须是字母(大写或小写).[a-zA-Z]最后一个字符必须是字母数字(大写或小写).[a-zA-Z0-9]中间的任何字符必须是带有一个规则的字母或数字:
用户可以使用句点(.),短划线( - )或下划线(_),但必须后跟字母数字字符.因此,不能一次重复这些字符中的一个或多个.
我尝试了以下正则表达式模式,但没有得到我希望的结果.感谢您抽出宝贵时间帮助我.
^[a-zA-Z]([a-zA-Z0-9]+[._-]?[a-zA-Z0-9]+)+$
Run Code Online (Sandbox Code Playgroud)
编辑
它实际上可能按我预期的方式工作.但是我总是把两场比赛送回给我.第一个是整个有效字符串,第二个是第一个字符串的缩短版本,通常会删除前几个字符.
有效输入的示例:
无效输入的示例: