在找到电子邮件之前忽略数据?

时间:2011-09-04 15:33:30

标签: regex

在下文中......

^here there me@acme.com$

...我想忽略并删除电子邮件地址之前的所有数据,以便我最终只收到电子邮件。

我使用了以下正则表达式,但它只是预设@

^([^ ].+?@.+)$

我认为语法[^ ].+?意味着:“一个或多个非空格字符”,但它没有达到我的预期。


在某些情况下,正则表达式[^ ]+@.+$^[^ ]+@.+$会占用两行:

SomeWord
me@acme.com

2 个答案:

答案 0 :(得分:2)

[^ ].+?实际上是指“一个非空格字符(h),后面是一组字符的任意字符。(ere there me)”

请改为尝试:

\S+@.+$

答案 1 :(得分:-2)

试试这个:

[a-zA-Z0-9\.]*@[a-zA-Z0-9\.]*

(可根据需要调整)