我想写一个 Perl 正则表达式,如果一个字符串给出一个匹配
- 以“回复:”开头
- 以任意数量的字符继续
- 仅以“@domain1.fr”或“@domain2.fr”继续
- 以任意数量的字符结尾
例子 :
- 回复:abc def@domain1 必须匹配
- 回复:abc def@domain2 必须匹配
- 回复:abc def@domain3 不能匹配
我试过了
/^Reply-To: *(?!@domain1.fr|@domain2.fr)/
但
- 回复:abc def@domain1 不匹配
- 回复:abc def@domain2 不匹配
问题是从与 domain1 AND domain2 不同的匹配域中排除。因为,如果我想从仅与 domain1 不同的匹配域中排除,我输入
/^Reply-To: *(?!domain1.fr)/
它工作得很好。