Re: [SAde] RE-Nachhilfe, HTML-Tags (Lösung)
Ingo Wiarda <[email protected]> Thu, 16 Oct 2003 01:03:34 +0200
| Newsgroups | gmane.mail.spam.spamassassin.devel.de |
|---|---|
| Message-ID | <[email protected]> |
Am Mittwoch 15 Oktober 2003 23:21 schrieb Wolfram Schroeder: > Ingo Wiarda schrieb: > > > > 4. Email-Adressen der Form "Joe Meier" <[email protected]> > > (kommt theoretisch irgendwann mal vor) > > > > 5. <> bzw. <\s*> wird auch gematcht. Ist das Absicht? > > > 4. Kommen tatsächlich in Mails solche Mailadressen vor? Die RE würde > eventuell ziemlich lahm werden, wenn ich das berücksichtigen müsste, > vielleicht durch eine zusätzliche Alternative \w+\@[a-z0-9-.]{5,} - oder > hast Du diese Form nur in From: und To: gefunden? Ist mir einmal vorgekommen, hatte jemand in seiner Signatur. Aber praktisch kann man das vernachlässigen. > 5. kann ich nicht nachvollziehen? <> und < > matchen beide, die > Tagnamen sind ja nicht optional? Solange man nur HTML-Mails mit der Regel bearbeitet, ist auch alles in Ordnung. Ansonsten gibt es natürlich Fälle, in denen jemand HTML-<STDIN> oder <> nicht für HTML verwendet wird. Abgesehen von diesen Nebensächlichkeiten ist die Regex gut, mal sehen wie viel die Optimierung noch bringt. > Wenn Du schon ein script hast, kannst Du bestimmt ein "time " vor Deinen > Aufruf setzen und mir Vergleichswerte für die Geschwindigkeit bei der RE > oben und meinem Standardbeispiel /(?:top.{0,10}|sonder)aktion/i nennen? > Später könnten wir vielleicht auch ein definitives Urteil über > Optimierungen fällen, wäre nett! Benchmark: timing 20 iterations of reg1, reg2, sonder_aktion... reg1: 197 wallclock secs (167.91 usr + 14.74 sys = 182.65 CPU) @ 0.11/s (n=20) reg2: 177 wallclock secs (143.01 usr + 14.25 sys = 157.26 CPU) @ 0.13/s (n=20) sonder_aktion: 659 wallclock secs (586.35 usr + 17.45 sys = 603.80 CPU) @ 0.03/s (n=20) s/iter sonder_aktion reg1 reg2 sonder_aktion 30.2 -- -70% -74% reg1 9.13 231% -- -14% reg2 7.86 284% 16% -- Reg1 ist die alte, Reg2 die neue Regex mit den XML/<!-- Tests. sonder_aktion ist Dein Standardbeispiel. Datenbasis: ca. 8000 Mails, 3000 davon Spam (inkl. SpamAssassin-rewrite-Vorspann). Die Regexes wurden auf den kompletten Nachrichtentext angewendet (alles nach dem ersten ^Subject: ). Im Normalfall würde man das natürlich abkürzen, indem man nach einem Match abbricht und den entsprechenden Score vergibt. Bei Bedarf kann ich das Testskript online stellen. Ingo -- http://dewarim.de ------------------------------------------------------- This SF.net email is sponsored by: SF.net Giveback Program. SourceForge.net hosts over 70,000 Open Source Projects. See the people who have HELPED US provide better services: Click here: http://sourceforge.net/supporters.php