Regex 正则表达式:检查第一个字符并匹配

Regex 正则表达式:检查第一个字符并匹配,regex,Regex,我正在处理一个正则表达式电子邮件验证任务,它工作得非常好。我可以根据要求的所有标准进行匹配。以下是我目前的模式: ^([a-zA-Z0-9.\-\_\+]+)@([a-zA-Z0-9.\-\_\+]+)$ 我还想检查它是否以字母字符开头。所以我改变了我的模式: ^[a-zA-Z]([a-zA-Z0-9.\-\_\+]+)@([a-zA-Z0-9.\-\_\+]+)$ 这很好,只在第一个字符是字母时产生匹配但是,生成的匹配会切断第一个字符。例如,如果我尝试: Billy@bobby.com 在

我正在处理一个正则表达式电子邮件验证任务,它工作得非常好。我可以根据要求的所有标准进行匹配。以下是我目前的模式:

^([a-zA-Z0-9.\-\_\+]+)@([a-zA-Z0-9.\-\_\+]+)$
我还想检查它是否以字母字符开头。所以我改变了我的模式:

^[a-zA-Z]([a-zA-Z0-9.\-\_\+]+)@([a-zA-Z0-9.\-\_\+]+)$
这很好,只在第一个字符是字母时产生匹配但是,生成的匹配会切断第一个字符。例如,如果我尝试: Billy@bobby.com 在@符号返回为“illy”之前的用户id匹配。我想让它变成“比利”


请参见此处的regex操作:

Nick为我提供了所需的帮助。这是我最后的模式


^([a-zA-Z][a-zA-Z0-9.-++])@([a-zA-Z0-9.-++]+[a-zA-Z])$

只需将前导的
[a-zA-Z]
放在第一个