LX: Firmenadressen als solches erkennen ...

Beitrag lesen

Hallo @all,
Zum Problem: Der Kunde der was im eShop bestellen möchten, kann keine Bestellung auf Rechnung an eine Firma tätigen, das muss ich unterbinden.
(...)

Ich habe gleich mehrere Tips:

  • verwende toLowerCase(), auf diese Weise kann sich der Kunde nicht so leicht mit falscher Groß-/Kleinschreibung raustricksen.
  • verwende eine einzelne RegExp
  • nicht vergessen: escape "."

Das Ergebnis sieht etwa so aus:

if (name.toLowerCase().match(/\b(g\W*b\W*r|g?e?s?\W*g\W*m\W*b\W*h\W*g?|[aeok]\W*g|a\W*k\W*t\W*g|k\W*g\W*a\W*a|o\W*h\W*g|i\W*n\W*v\W*a\W*g|c\W*o\W*\.|l\W*t\W*d\W*\.|i\W*n\W*c\W*\.)\b/)) { alert('Achtung, sie haben einen Firmennamen angegeben!') }

Die \W* sind dazu da, nicht-alphanumerische Zeichen abzufangen, die man bösartigerweise dazu mißbrauchen könnte, um die Regexp zu täuschen.

Nebenbei: perfekt sind solche Mechanismen nicht. Du solltest immer noch 1. serverseitig und 2. unter Verwendung einer menschlichen Intelligenz prüfen.

Gruß, LX

--
RFC 1925, Satz 3: Mit ausreichendem Schub fliegen Schweine wunderbar. (...)