* David W. Tamkin <dattier(_at_)panix(_dot_)com> [2004-07-23 19:21]:
However, these two run into the leading slash problem:
* ! \<scr\>
* HB ?? ! \<ex.?500\>
and should be written
* ! ()\<scr\>
* HB ?? ! ()\<ex.?500\>
if you want \< to act as a match to a non-word character.
I never heard of this problem! I have been running scripts for years
such that a regex conditional begins with "\". Here is a script that
is being used to handle old/malconfigured mailing lists, or lists that
came as digests (and later get reprocessed through formail):
TO_FROM_ML_PREFIX=(urine-test|dat-heads|socal-raves|scr)
TO_FROM_ML=$TO_FROM_ML_PREFIX(\
@calyx.net|\
@[a-z0-9.-]*near.net|\
@ucsd.edu|\
@socal-raves\.org)
# To/From mailing lists
#
:0
*$ ^TO_$TO_FROM_ML
*$ ^TO_\/$TO_FROM_ML_PREFIX@
* MATCH ?? ()\/[^(_at_)]+
{
LISTNAME=`echo $MATCH | sed -e 's/Socal-Raves/scr/I'`
:0 fhw
| sed "/^Subject:/ s/ *\[$LISTNAME\] */ /I"
:0 :
mailing_lists/${LISTNAME}_${YEAR:-0000}
}
So this recipe should be failing on the second conditional? Maybe it
is and I didn't test it well. This might explain why (some?)
urine-test messages get past this recipe and end up in my default
inbox.
Also, notice the "()" prefix on the third conditional. I was only
copying someone else, and didn't know what the parenthesis were for.
So what's really happening in the absense of "()"?
____________________________________________________________
procmail mailing list Procmail homepage: http://www.procmail.org/
procmail(_at_)lists(_dot_)RWTH-Aachen(_dot_)DE
http://MailMan.RWTH-Aachen.DE/mailman/listinfo/procmail