正则表达式匹配电子邮件,除了特定的电子邮件地址(es)
我需要一个能够匹配电子邮件地址的正则表达式,但从匹配中排除特定的电子邮件地址
例如不匹配(从匹配中排除这些地址);
sponge.bob@example.com
jim.bob@example.com
billy.bob@example.com
匹配所有其他电子邮件地址(包括任何其他有效的电子邮件地址
test@example.com
no.body@example.com
another.test.email@example.com
and.another.one@example.com.au
我尝试使用负面lookbehind表达式,但无法弄清楚如何让它工作(如果甚至可以通过该方法)。 能够指定多个排除的电子邮件将是有益的,但至少需要一个排除。
谢谢
(?:^|(?<=s))(?!sponge.bob@example.com|jim.bob@example.com|billy.bob@example.com)(w[w.]*@w+.[w.]+)b
在这里看到演示。
说明
(?:^|(?<=s)) //appears at start of line or after space
(?! //Don't match if it starts with the below
sponge.bob@example.com|
jim.bob@example.com|
billy.bob@example.com
) //End exclusions
( //Capture group for emails, you don't need this
w //Start with [A-Za-z0-9_]
[w.]* //Zero or more of [w.]
@
w+ //Start with one or more [A-Za-z0-9_]
. //Forces to have atleast one dot
[w.]+ //followed by one or more of [w.]
) //End capture group for emails, remove it with the matching group
b //Should end with word boundary.
链接地址: http://www.djcxy.com/p/92647.html
上一篇: Regular expression to match email except for specific email address(es)