Sigh. Sean, either your head is elsewhere today or you're attempting a
specious tactic that is really beneath you.
| To demonstrate to yourself, I invite you to run the following example
| script:
|
| SOMEADDR=joeuser(_at_)domain(_dot_)tld
|
| :0:
| * SOMEADDR ?? \<joeuser(_at_)domain\(_dot_)tld\>
| test.true
Of course that trompe-l'oeil of yours fails to match. Look at my previous
message and compare it to the regexp I really posted:
* REPLYTO ??
()\<(joe(_at_)aol\(_dot_)com|ed(_at_)msn\(_dot_)com|john(_at_)yahoo\(_dot_)com)\>
You know the difference between starting with \< and starting with ()\<. So
just how did those parentheses magically disappear from your revision of my
example?
An initial backslash means "end of indenting whitespace." Starting a regexp
with \< matches an opening literal less-than sign (and one has to protect
the less-than sign because otherwise procmail will expect a size condition
instead of a regexp). $SOMEADDR had no literal less-than sign before the j,
so it didn't match then.
| I am eager to hear the explanation for what can only be explained as an
| anomaly ...
I've just explained it, so if you want to hear the explanation, turn on your
speech generator and scroll back.
| -- mind you, I see it operating _EXACTLY_ as I expect it to, ...
You shouldn't expect that, because it's not operating the way you say it is.
You had to skew the test to get the mismatch you wanted.
| but the results of this test don't jive with what you're saying.
If you use this:
* SOMEADDR ?? ()\<joeuser(_at_)domain\(_dot_)tld\>
or
* SOMEADDR ?? \\<joeuser(_at_)domain\(_dot_)tld\>
you'll see that they do match and it does jibe, and that the only jive is in
your omitting the parentheses.
See for yourself: \<, when properly presented to procmail, does indeed match
an opening putative newline.
Script started on Thu Nov 29 16:14:40 2001
pop2a:folders> cd
pop2a:/home/foley/dattier> cat .strawrc
VERBOSE=on
SOMEADDR=joeuser(_at_)domain(_dot_)tld
OTHERADDR=<jackuser(_at_)domain(_dot_)tld
:0
* SOMEADDR ?? ()\<joeuser(_at_)domain\(_dot_)tld\>
{ }
:0
* SOMEADDR ?? \\<joeuser(_at_)domain\(_dot_)tld\>
{ }
:0
* OTHERADDR ?? \<jackuser(_at_)domain\(_dot_)tld\>
{ }
:0
* OTHERADDR ?? ()<jackuser(_at_)domain\(_dot_)tld\>
{ } # unprotected leading < would be size condition
:0
* OTHERADDR ?? ()\<<jackuser(_at_)domain\(_dot_)tld\>
{ }
:0
* OTHERADDR ?? \\<<jackuser(_at_)domain\(_dot_)tld\>
{ }
DEFAULT=/dev/null
pop2a:/home/foley/dattier> procmail -v
procmail v3.23pre 2001/09/13
Copyright (c) 1990-2001, Stephen R. van den Berg <srb(_at_)cuci(_dot_)nl>
Copyright (c) 1997-2001, Philip A. Guenther
<guenther(_at_)sendmail(_dot_)com>
Submit questions/answers to the procmail-related mailinglist by sending to:
<procmail-users(_at_)procmail(_dot_)org>
And of course, subscription and information requests for this list to:
<procmail-users-request(_at_)procmail(_dot_)org>
Locking strategies: dotlocking
Default rcfile: $HOME/.procmailrc
Your system mailbox: /var/spool/mail/dattier
pop2a:/home/foley/dattier> procmail .strawrc < /dev/null
procmail: [29347] Thu Nov 29 16:15:09 2001
procmail: Assigning "SOMEADDR=joeuser(_at_)domain(_dot_)tld"
procmail: Assigning "OTHERADDR=<jackuser(_at_)domain(_dot_)tld"
procmail: Match on "()\<joeuser(_at_)domain\(_dot_)tld\>"
procmail: Match on "\\<joeuser(_at_)domain\(_dot_)tld\>"
procmail: Match on "\<jackuser(_at_)domain\(_dot_)tld\>"
procmail: Match on "()<jackuser(_at_)domain\(_dot_)tld\>"
procmail: Match on "()\<<jackuser(_at_)domain\(_dot_)tld\>"
procmail: Match on "\\<<jackuser(_at_)domain\(_dot_)tld\>"
procmail: Assigning "DEFAULT=/dev/null"
procmail: Assigning "LASTFOLDER=/dev/null"
procmail: Opening "/dev/null"
Folder: /dev/null 0
pop2a:/home/foley/dattier> out
script done on Thu Nov 29 16:15:43 2001
--
DWT, wondering if anyone noticed the pun in "jackuser"
_______________________________________________
procmail mailing list
procmail(_at_)lists(_dot_)RWTH-Aachen(_dot_)DE
http://MailMan.RWTH-Aachen.DE/mailman/listinfo/procmail