On Mon, Dec 10, 2018 at 08:46:32AM +0200, Henrik Krohns wrote:
> On Sun, Dec 09, 2018 at 01:06:01PM -0500, Bill Cole wrote:
> >
> > To make this determination, the rules require the 'multiple' flag without
> > a cap on thne number of matches which a 'maxhits' parameter would set.
> 
> Please don't do unlimited maxhits, it's terrible if message accidently or
> intentionally contains thousands of e's.  The eval code runs all sorts of
> crap for every hit, not to mention the mass of debug lines it potentially
> creates.
> 
> If I read right, isn't it enough to set __LOWER_E maxhits=21 and
> __E_LIKE_LETTER maxhits=211 for the clause to evaluate as true?
> 
>     body            __LOWER_E       /e/i
>     tflags          __LOWER_E       multiple
>     replace_rules   __E_LIKE_LETTER
>     body            __E_LIKE_LETTER /<E>/
>     tflags          __E_LIKE_LETTER multiple
>     meta            MIXED_ES        ( __LOWER_E > 20 ) && ( __E_LIKE_LETTER > 
> ( (__LOWER_E * 14 ) / 10) ) && ( __E_LIKE_LETTER > ( 10 * __LOWER_E ) )
>     describe        MIXED_ES        Too many es are not es

Also consider limiting __HAS_IMG_SRC, __HAS_HREF, __HAS_IMG_SRC_ONECASE,
__HAS_HREF_ONECASE

I would use non-greedy .*? in all those also

/^[^>].*<img src=/i

Reply via email to