On Sun, 2010-02-28 at 12:00 -0500, Mark London wrote:
> Hi - I created a FULL rule that works fine with html in plain text.  
> However, if the html is base64 encoded, FULL rules don't appear to 
> work.  A RAWBODY rule doesn't work either, because it doesn't ignore 
> line breaks.  Any ideas?

full rules don't ignore line breaks either, do they?

Anyway, if you want to treat line breaks just like any other whitespace
and therefor possibly apply your rules to multi-line strings, have a
look at the /m and /s RE modifiers.
  http://perldoc.perl.org/perlre.html#Modifiers

You don't need a special parsed or decoded message -- you can extend
your rule's RE.


Note that in this case proper bounding becomes even more crucial, since
the string to match against can be quite long. Don't use unbound
quantifiers like * and + unless absolutely necessary, but try to always
limit matching by using an upper bound quantifier, like {1,80}.


-- 
char *t="\10pse\0r\0dtu...@ghno\x4e\xc8\x79\xf4\xab\x51\x8a\x10\xf4\xf4\xc4";
main(){ char h,m=h=*t++,*x=t+2*h,c,i,l=*x,s=0; for (i=0;i<l;i++){ i%8? c<<=1:
(c=*++x); c&128 && (s+=h); if (!(h>>=1)||!t[s+h]){ putchar(t[s]);h=m;s=0; }}}

Reply via email to