I have been playing around with some rules for this and here are my results:
body FB_VIA__GRA /[vV].?[iïîíìIÏÎÍÌl1\|[EMAIL PROTECTED]@]/i
describe FB_VIA__GRA Via__gra with variations on the letters a and i
score FB_VIA__GRA 2.0
body FB_VICO__DIN /[vV].?[iïîíìIÏÎÍÌl1\|].?[cC].?[oO0].?[dD].?[iïîíìIÏÎÍÌl1\|].?[nñNÑ]/i
describe FB_VICO__DIN Vico__din with variations on the letters a, o, n and i
score FB_VICO__DIN 2.0
body FB_VAL__IUM /[vV].?[aäâãáàåAÄÂÃÁÀÅ].?[lLiïîíìIÏÎÍÌ1\|].?[iïîíìIÏÎÍÌl1\|].?[uüûúùUÜÛÚÙ].?[mM]/i
describe FB_VAL__IUM Val__ium with variations on the letters a, l, u and i
score FB_VAL__IUM 2.0
body FB_XAN__AX /[xX].?[aäâãáàåAÄÂÃÁÀÅ].?[nñNÑ].?[aäâãáàåAÄÂÃÁÀÅ].?[xX]/i
describe FB_XAN__AX Xan__ax with variations on the letters a and n
score FB_XAA__AX 2.0
As you can see, I chose a rather blunt approach for the commonly used separating characters. This causes the rules to also match other good and bad matches. I think an otherwise sane message will survive this.
If you wish to limit matches, you can replace .? with [\.\|\(\)\{\}\&\^\~\;:,_¨=+-*/]? for instance. Another approach is [^[:alpha:]]? or [^[:alnum:]]?
After some investigation, I have decided to go with the [^[:alnum:]]? approach since it probably gives me least amount of false positives.
Since I'm no regexp professional myself, I take the liberty of explaining the above rules (perhaps some other newbie reads this):
[vV] Either "v" or "V", only one character.
.? Zero or one character. Any character will do.
[iïîíìIÏÎÍÌl1\|] Exactly one of the enclosed characters, in this case characters that resembles an "i".
[\.\|\(\)\{\}\&\^\~\;:,_¨=+-*/]? Zero or one of the following: .|(){}&^~;:,_¨=+-*/ (the first ones are special characters that need to be escaped with \)
[^[:alpha:]]? Zero or one non-alpha char (not a letter)
[^[:alnum:]]? Zero or one non-alphanumeric char (not a letter or digit)
The / and /i that surrounds the rule is probably SpamAssassins way of delimiting an expression.
/Fredrik
At 23:39 2004-01-11 +0100, you wrote:
Hello List, Hello Martin
I tried to describe to letters with an \x.. code but there are still some difficulties. having only a | or a ¡ as special character in the word the rule swings in, but adding another one or two @s just kicks it. I post the source of the rule here - let's hope someone notices an error.
I would be happy aobut any suggestions !
body BODY_VI**** /\b[Vv](?:\.|\^|\-|\*|\+)?(?:I|i|\xA1|\||\xCC|\xEC|\xCD|\xED|\xCE|\xEE|\xCF| \xEF)(?:\.|\^|\-|\*|\+)?(?:A|a|@|\xC0|\xE0|\xC1|\xE1|\xC2|\xE2|\xC3|\xE3|\xC 4|\xE4|\xC5|\xE5)(?:\.|\^|\-|\*|\+)?[Gg](?:\.|\^|\-|\*|\+)?[Rr](?:\.|\^|\-|\ *|\+)?(?:A|a|@|\xC0|\xE0|\xC1|\xE1|\xC2|\xE2|\xC3|\xE3|\xC4|\xE4|\xC5|\xE5)\ b/ describe BODY_VI**** Possible po__rn - Vi**** in some form score BODY_VI**** 5.0
------------------------------------------------------- The SF.Net email is sponsored by EclipseCon 2004 Premiere Conference on Open Tools Development and Integration See the breadth of Eclipse activity. February 3-5 in Anaheim, CA. http://www.eclipsecon.org/osdn _______________________________________________ Spamassassin-talk mailing list [EMAIL PROTECTED] https://lists.sourceforge.net/lists/listinfo/spamassassin-talk