我正在编写一个电子邮件验证程序,我想验证电子邮件,使其在@符号后不包含连字符'_'。 例如允许发送电子邮件lmn-xyz@abc-pqr.com,但不允许使用xyz@-pqr.com。 我试过以下表达但没有帮助。
^ [A-ZA-Z0-9 _ + - ] +([A-ZA-Z0-9 _ + - ]。+) @ [A-ZA-Z0-9 - ] +([一个-Za-Z0-9 - 。] +)([A-ZA-Z] {2,})$
任何建议我如何实现上述功能都是正则表达式。 提前谢谢。
答案 0 :(得分:0)
在[a-zA-Z0-9]
符号后再次添加第一个组,不带连字符(@
)。为了保持一致性,您还应该在+
之后的第一个组中使用*
更改@
- 因为需要添加一个。{/ p>
^[a-zA-Z0-9_+-]+(.[a-zA-Z0-9_+-]+)@[a-zA-Z0-9][a-zA-Z0-9-]*(.[a-zA-Z0-9-]+).([a-zA-Z]{2,})$
答案 1 :(得分:0)
在@符号后使用否定前瞻:
^[a-zA-Z0-9_\+-]+(\.[a-zA-Z0-9_\+-]+)*@(?!-)[a-zA-Z0-9-]+(\.[a-zA-Z0-9-]+)*\.([a-zA-Z]{2,})$