[sieve][regex] Matching multiple strings in the "Received" header

Stephan Bosch stephan at rename-it.nl
Tue May 8 11:19:31 EEST 2018



Op 08/05/2018 om 08:42 schreef Adi Pircalabu:
> On 08-05-2018 16:20, Gerald Galster wrote:
>> Hello Adi,
>>
>> did you try:
>>
>> " 
>> from.*(outbound.protection.outlook.com|.google.com|.yahoo.com|mx.aol.com) 
>> "
>>
>> If you need to specify the posix character class:
>>
>> [[:blank:]] means space and tab. With pcre it would be like [ \t]
>> [[:space:]] includes space, tab, newline, linefeed, formfeed, vertical
>> tab (in pcre like [ \t\n\r\f\v])
>>
>> "[[:blank:]]from.*(outbound.protection.outlook.com|.google.com|.yahoo.com|mx.aol.com)[[:blank:]]" 
>>
>
> Thanks Gerald, none of your solutions worked, but I've just figured it 
> out now. In the expression the space should only be added at the end, 
> *not* at the beginning! In the Received header the first character 
> isn't [[:blank:]], but "f", so I've been chasing the wild goose all 
> this time because I started with the wrong assumption :)
> Sorry for the noise, all good now.

Also keep in mind that "\" is first used for escaping the string itself, 
meaning that these need to be duplicated.

https://tools.ietf.org/html/rfc5228#section-2.4.2
https://tools.ietf.org/html/draft-murchison-sieve-regex-08#section-3

Regards,

Stephan.



More information about the dovecot mailing list