Hi, Try this
if (version >= 4.000000) if can(Mail::SpamAssassin::Conf::feature_capture_rules) header __TZ_CAP_TO_USR To:addr =~ /(?<TZ_TO_USR>[^@]+)/ header __TZ_SUBJ_HAS_USR Subject =~ /\b%{TZ_TO_USR}\b/i endif endif I'm curious if CAPTURING TAGS can handle multiple groups within the same rules like this? header __TZ_CAP_TO_ADDR To:addr =~ /(?<TZ_TO_USR>)\@(?<TZ_TO_DOMAIN>)/ Jimmy On Thu, May 23, 2024 at 2:40 PM Carsten <postfixe...@gmail.com> wrote: > Hi @all, > > I want to create a SpamAssassin rule that checks if the subject line of an > email contains the local part of the recipient's email address (the part > before the @ symbol). For example, if the recipient's email address is > i...@example.com, I want to check if the subject contains the phrase > "info lorem ipsum". If the recipient's email address is foo...@example.com, > I want to check if the subject contains the phrase "foobar lorem ipsum". > The rule should be general and adaptable to different local parts of email > addresses. > > *Requirements:* > > 1. Extract the local part of the recipient's email address from the To > header. > 2. Use the extracted local part to check if it is present in the > Subject header. > 3. The rule should be written in a way that works for any local part > of the email address, not just a specific one. > > Thank you very much for your suggestions >