I don't really know perl, but I tried to duplicate the slow match on the rule in a little test program to see if I could experiment with ideas for a working regexp.
The following program did not take long to run. What am I doing wrong? #!/usr/bin/perl $string="AAAAAAAAAAAAAAAAAAA foofoo"; if ($string=~/^[^a-z]*([A-Z][^a-z]*){3,}[^a-z]*$/) { print "passed\n"; } else { print "failed\n"; } Also, would it speed things up to have two rules, one which matches any subject and adds points, and another which matches a subject with any lower case and subtracts points, the combination adding to the number of points you would want to assign a single rule that matches all caps? -- sidney _______________________________________________ Spamassassin-talk mailing list [EMAIL PROTECTED] https://lists.sourceforge.net/lists/listinfo/spamassassin-talk