我现在正在使用它:
/^(.*)\+(.*)@gmail.com/
(我正在捕捉小组加号前后的文字)
它适用于大多数情况,例如
test+test@gmail.com
但是,如果我试着匹配说,那就倒下了
test+++test@gmail.com
重复的+标志似乎搞砸了。
非常感谢任何帮助。
由于
答案 0 :(得分:5)
(.*?)\++(.*?)@gmail.com
应该有效。
答案 1 :(得分:1)
你需要逃避+号:/^(.+?)\++(.+?)@gmail.com/
编辑:您的帖子格式错误:您的+已被转义
答案 2 :(得分:1)
您没有正确检测到+。使用类似这样的东西:^([^ +] +)[+] +([^ +] +)@ gmail.com
答案 3 :(得分:1)
[a-zA-Z0-9]{1,}[\+]{0,}[a-zA-Z0-9]{0,}@gmail.com
答案 4 :(得分:0)
你可以使用[]和^(所有的字符但......) e.g。
echo 'aaa++++bbb@gmail.com' | perl -p -e 's/^([^\+]*)\+(.*)@gmail.com/$1/'
答案 5 :(得分:0)
如果您不关心验证地址的第一部分(在任何“+”之前),您可以使用/^([^+]+)(:?+[^+]*)*@gmail.com/
到第一部分。
根据RFC规定的任何规则,您可能希望对此进行更好的验证,以确保它是“有效”的帐户格式。
编辑 - 星号正在制作粗体语句。
答案 6 :(得分:0)
我认为可以简化一下操作:
如果您知道要查找的地址,并且希望与该地址匹配,无论其上是否带有'plus'标记,
bignev(\+.*)*@gmail.com
如果您只想要带有'plus'标签的标签:
bignev(\+.*)@gmail.com
如果您拥有自己的域:
bignev(\+.*)*@everton.com
或者专门回答原始帖子:
.*(\+.*)@gmail.com