用于查找字符串的正则表达式,其中包含@
且不应以.
开头或以{{1}结尾}含义hello @ Same有效.hello @ Same,hello @ Same。和你好@ sdj @相同都是无效的
.
中有什么问题。
所有这三个部分都是单独工作但是当我们放在一起时不起作用
答案 0 :(得分:1)
您的正则表达式中有多个线符号起始^
和多个行符号$
。
答案 1 :(得分:1)
^([^.@]+)@([^.@]+)$
将其分解为更易于管理的部分:
^([^.@]+) // Start with anything except . or @
@ // @ must be somewhere in the expression
([^.@]+)$ // End with anything except . or @
它与您的规格不完全匹配(无法以@
开头或结尾)但如果您正在验证电子邮件地址,那么这可能是一个理想的属性。
答案 2 :(得分:0)
如果要匹配,则不能只连接正则表达式 所有这些。
另一个错误是尝试验证电子邮件地址 用正则表达式。这只是效果不好。唯一的 找出用户是否输入有效地址的方法是发送 电子邮件。
符合您规范的正则表达式将是
^(?=[^@]+@[^@]+$)[^.].*[^.]$
但是,正如我所说,这不是验证电子邮件地址的好方法。 Check this link for horrible counter examples. =)