![](/img/trans.png)
[英]Finding the longest substring between a “start” string and one of 3 possible “end” strings
[英]Regex Expression for finding a string Which Has one @ and should not start with . or end with
正则表达式用于查找具有一个@
且不应该以.
开头的字符串的表达式.
或以结尾.
含义hello @ Same是有效的.hello @ Same,hello @ Same。 和hello @ sdj @ same都无效
(^([^@]+)@([^@])+$)(^[^\\\\.].*$)(^.*[^\\\\.]$)
?
所有这三个部分都是单独工作的,但是当我们放在一起时却不起作用
您的正则表达式中有多个行号^
和多个行号$
。
^([^.@]+)@([^.@]+)$
要将其分解为更易于管理的部分:
^([^.@]+) // Start with anything except . or @
@ // @ must be somewhere in the expression
([^.@]+)$ // End with anything except . or @
它与您的规范不完全匹配(不能以@
开头或结尾),但是如果您要验证电子邮件地址,则可能是理想的属性。
如果要匹配所有正则表达式,则不能只连接它们。
另一件错误的事情是尝试使用正则表达式验证电子邮件地址。 这只是不能很好地工作。 找出用户是否输入有效地址的唯一方法是发送电子邮件。
符合您要求的正则表达式为
^(?=[^@]+@[^@]+$)[^.].*[^.]$
但是,正如我所说,那不是验证电子邮件地址的好方法。 检查此链接以获得可怕的计数器示例。 =)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.