Regular-Expression
帶有正則表達式的 procmail 配方不起作用
在我的
~/.procmailrc
我有以下幾行::0 \* ^Subject:.*(O|o)pen( \|)(S|s)(onic|urge) $MAILDIR/OpenSurge/
如您所見,我想將任何包含“Open Surge”(或任何帶有空格或大寫字母的變體)的郵件放在 OpenSurge 文件夾中。但是包含這個詞的消息只進入了預設文件夾。
請注意,我有很多其他食譜,
^From:foo
當我嘗試^Subject:.*OpenSurge
使用“OpenSurge”的食譜時,我不使用 regexp^Subject:.*(O|o)pen( \|)(S|s)(onic|urge)
。那麼,我怎樣才能用一個正則表達式來匹配所有寫“Open Surge”的可能性呢?
這個怎麼樣:
:0 * ^Subject:.*Open[ ]*Surge OpenSurge
procmail 的預設設置是忽略大小寫。另請參閱
D
。匹配的消息儲存在文件 OpenSurge 中。它通常位於
~/Mail/
.$$ Edit $$ 如果您還想匹配“Open sonic”,您可以使用@Bruce Ediger 的正則表達式,但還有其他方法:
添加另一個匹配規則
:0 * ^Subject:.*Open *sonic OpenSurge
或者
:0 * ^Subject:.*Open *Surge | \ ^Subject:.*Open *sonic OpenSurge
或者
:0 * ^Subject:.*(Open *Surge|Open *sonic) OpenSurge
等等。
您也不應該使用預設值
.procmailrc
,而是使用帶有類似註釋的預設值。要檢查發生了什麼,請打開
VERBOSE
。日誌儲存在LOGFILE
.