我需要一个与电子邮件地址匹配的正则表达式,但不包括匹配中的特定电子邮件地址
e.g。不匹配(从匹配中排除这些地址);
0.0001*q
匹配所有其他电子邮件地址(包括任何其他有效的电子邮件地址);
sponge.bob@example.com
jim.bob@example.com
billy.bob@example.com
我尝试使用负面的lookbehind表达式,但无法弄清楚如何使其工作(如果可能通过该方法)。能够指定多个被排除的电子邮件是有益的,但至少需要一次排除。
由于
答案 0 :(得分:2)
(?:^|(?<=\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.
请参阅演示here.
<强>解释强>
{{1}}