Postfix
正文檢查表達式中的正則表達式中的後綴錯誤
包含:blablabla.icu/blabla 的電子郵件應被阻止。我對這條規則感到困惑,以阻止和包含地址以 .icu/ 結尾的連結的電子郵件:
/.*\.icu\/*./ Reject
問題是任何包含anything.icuabacadada 的電子郵件(包括附件)也會被阻止。
似乎 / 之前的第二個 \ 沒有按意圖工作。任何建議如何解決這個問題?
讓我從您的問題中刪除正則表達式:
/.*\.icu\/*./ ^^ (A) this part is not needed ^^^^^ (B) this matches .icu ^^^ (C) this matches 0, 1, 2 or any number of / ^ (D) this matches 1 character (any of them)
要獲得正確的正則表達式,您需要
- 刪除 A(以提高性能)
- 保持B
- 修改 C 來描述一個
/
字元- drop D (我想它是錯誤地放在這裡的,也許你混到
.*
了*.
?所以正確的正則表達式是:
/\.icu\//
該構造
\/*
匹配任何斜線,包括不匹配斜線。也許/.*\.icu\/.*/ Reject
您只想匹配那些包含“.icu/”的地址。我不熟悉後綴正則表達式,但我猜轉義的斜杠是正確的。編輯
改進的正則表達式應該是
/\.icu\// Reject
(感謝 asdmin)