Какие специальные символы работают в регулярном выражении sieve?

У меня есть почтовый клиент Roundcube Webmail v. 1.3.1 с managesieve v. 8. 7 и хочу добавить некоторые действия, управляемые регулярными выражениями, для моей почты, и единственная документация, которую я нашел по разновидности регулярных выражений, - это этот документ . Однако я не могу найти, какие специальные символы он поддерживает, например \ n (или это \\ n ?), \ r или \ d и т.д. и как их писать. Упоминаются группы символов, определенные через [::] , который работает, однако я бы предпочел использовать \ n (который, похоже, не работает) вместо более широкого [ : cntrl:] или [: space:] или подобное.

В документе написано, что он должен поддерживать стандарт POSIX ERE, однако я знаком с различными вариантами регулярных выражений (PERL type), поэтому мне это довольно сложно.

Не могли бы вы узнать, какие специальные символы и последовательности символов в нем поддерживаются? Какие символы не являются специальными и т. Д.?

Я придумал простое регулярное выражение, чтобы сопоставить дату в ГГГГ / ММ / ДД, затем пробел, затем время в формате ЧЧ: ММ: СС, затем разрыв строки и затем все, что в начале тело письма, но похоже, что оно не работает. Вот код Sieve:

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!
.
;
}
1
задан 16 April 2018 в 22:49
1 ответ

В документации Sieve, на которую вы ссылаетесь, указано, что она соответствует синтаксису регулярных выражений POSIX, который задокументирован на

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

Это будет наиболее полная ссылка.

1
ответ дан 3 December 2019 в 23:17

Теги

Похожие вопросы