procmail
[Top] [All Lists]

Re: scoring oddity

2000-10-16 12:45:40
Dallman Ross <dman(_at_)nomotek(_dot_)com> writes:
From: guenther(_at_)gac(_dot_)edu
...
When a regexp is being matched multiple times (such as when scoring),
each search is started where the previous one left off**.  That's how all
regexp engines keep from finding the same match over and over again.  So,
that last condition will only match against a given Message-Id: header
field once, because it'll start the second search after the dollar sign
or bang.

The solution in this case is to extract the value of the Message-Id:
header and then count the $s and !s in MATCH:
...
I enabled this two days ago.  Yesterday I found that I also had false
positives on at least two other headers: "In-Reply-To:" and "References:".
Right now I have the middle part in as:

       :0
       * $ $=^0
       *  ^(Message-Id|In-Reply-To|References):\/.*[$!]
       *  -100^1 MATCH ?? [$!]
       { }

I'm not sure whether I've re-invented my original scoring problem by
doing it this way, though.

Yep.  You'll need to extract each of those header fields and count the
number of $s and !s in them in separate recipes.


Philip Guenther

_______________________________________________
procmail mailing list
procmail(_at_)lists(_dot_)RWTH-Aachen(_dot_)DE
http://MailMan.RWTH-Aachen.DE/mailman/listinfo/procmail

<Prev in Thread] Current Thread [Next in Thread>