phpbar.de logo

Mailinglisten-Archive

[php] ereg([[_alpha:]]) ??

[php] ereg([[_alpha:]]) ??

Oliver Trosien oli_(at)_tronet.on-luebeck.de
Tue, 30 Nov 1999 20:33:39 +0100


moin uwe,

Uwe Cornelly <cornelly_(at)_heidenheim.com> schrieb:

> Schon richtig, es wird nur auf Buchstaben geprueft. Speziell für
> Telefonnummern
> meiner Meinung nach ganz gut, denn wie oft wird die Nummer mal mit einem -
> oder
> mit einem / eingegeben.

Ja, willst Du denn, dass eine Telefonnummer so aussieht:
%%§$"!!-Ä#_(at)_Ä?

Wahrscheinlich nicht.
Dann doch vielleicht lieber so, dass Du nach "wahrscheinlichen"
Telefonnummer-Zeichen filterst: -/()0-9  wuerde ich mal sagen...

Also, regex-maschine anschmeissen und: (sorry, ich muss preg_match nehmen,
mit dem anderen Mist komme ich irgendwie nicht so ganz klar)

$PHONE = "(0451) / 39203-00"; ## ist gueltig

if (! preg_match("/^      # von anfang an
                    [0-9  # zahlen ..
                    \-    # bindestriche ..
                    \(\)  # klammern ..
                    \/    # schrägstriche ..
                    \s    # und whitespaces ..  sind ok
                    ]+    # mindestens einmal
                    $     # bis zum Ende, sprich:
                          # NUR die zeichen dürfen vorkommen
                    /x", $PHONE)) {

 print "error in $PHONE!";
} 

das Überprüfen von $PHONE == '' kannst Du dir sparen, indem Du bei der
regular expression das "+" verwendest (s.o.)

> Fuer bessere Loesungen bin ich jederzeit offen. :-)

Die obige Klammer kannst Du natuerlich nach Belieben erweitern.

hth,
oliver


php::bar PHP Wiki   -   Listenarchive