Email-Server

哪些特殊字元在篩正則表達式中起作用?

  • April 16, 2018

我有帶有 managesieve v. 8.7 擴展的 Roundcube Webmail v. 1.3.1 郵件客戶端,並且想為我的郵件添加一些正則表達式驅動的操作,而我在正則表達式風格上找到的唯一文件就是這個文件。但是我找不到它支持的特殊字元(或者\n\\n?)等等,以及如何編寫它們。提到了定義的字元組,但我寧願使用(這似乎不起作用)而不是更廣泛的或類似的。\r``\d``[: :]``\n``[:cntrl:]``[:space:]

在文件中寫到它必須支持 POSIX ERE 標準,但是我熟悉不同風格的正則表達式(PERL 類型),所以我覺得這相當困難。

您能幫忙找出其中支持哪些特殊字元和字元序列嗎?哪些字元不特殊等?

我想出了一個簡單的正則表達式來匹配 YYYY/MM/DD 中​​的日期,然後是空格,然後是 HH:MM:SS 格式的時間,然後是換行符,然後是郵件正文開頭的任何內容,但它似乎不是在職的。這是篩子程式碼:

require ["body","fileinto","regex","vacation"];
# rule:[date and time]
if anyof (body :text :regex "[[:digit:]]{2}/[[:digit:]]{2}/[[:digit:]]{4} [[:digit:]]{2}:[[:digit:]]{2}:[[:digit:]]{2}[[:space:]](.*[[:space:]]*)*")
{
vacation text:
YOU DID IT!
.
;
}

您連結到的 Sieve 文件指定它符合 POSIX 正則表達式語法,該語法記錄在

http://pubs.opengroup.org/onlinepubs/9699919799/nframe.html

這將是最權威的參考。

引用自:https://serverfault.com/questions/907929