我如何限制正则表达式前后的内容

问题描述 投票:0回答:1

我必须创建一个正则表达式来识别电子邮件。这是到目前为止的样子:

[A-Za-z0-9]+([._-]*[A-Za-z0-9]+)*[@]+[A-Za-z0-9]+([._-]*[A-Za-z0-9]+)*(.com)*

我想用此正则表达式来识别一封电子邮件。问题是电子邮件不能以任何非字母数字符号开头或结尾。因此:

[email protected] or [email protected]_ = invalid
ilike.stack@gmail = valid

但是当我运行Lex程序时,上面的前两封电子邮件被认为是有效的,我不知道该如何更改。

regex lex
1个回答
0
投票

相当好!

也许,

^[A-Za-z0-9][A-Za-z0-9._-]*@[A-Za-z0-9]+\.[A-Za-z]{2,6}(?:\.[A-Za-z0-9]{2,6})?$

可能会更近一些。

© www.soinside.com 2019 - 2024. All rights reserved.