phpbar.de logo

Mailinglisten-Archive

[php] Regex Frage

[php] Regex Frage

Ringo Gro�er swek at gmx.net
Fre Jan 27 07:52:00 CET 2006


Hallo Dirk,

Dirk Schwarz wrote:
> Ich bin nicht sehr bewandert, was RegEX angeht.

bin ich auch nicht, aber man kommt auf kurz oder lang nicht
an diesem thema vorbei.

> K�nnte mir einer
> einen Ausdruck F�r folgendes geben:
> Es sollen bei einer Eingabe nur A-Z, a-z, 0-9 . , - und ' zugelassen
> werden!

verwende preg_match und einen der folgenden pattern nach bedarf

/^[A-Za-z0-9\.\,\'\-]+$/
das + steht hierbei f�r eine pflichteingabe, d.h. der pattern matched
nur, wenn der vergleichsstring mindestens 1 zeichen enth�lt

/^[A-Za-z0-9\.\,\'\-]*$/
dieser pattern w�rde auch einen leeren string als zul�ssig akzeptieren
auf grund des *

alternativ kannst du anstatt + oder * ein {5} einsetzen, wenn du gegen
die genaue l�nge des strings mit 5 zeichen pr�fen m�chtest.
oder ein {2,5} wenn der string zwischen 2 und 5 zeichen lang sein darf.

nochmal eine kurze erl�uterung, damit du den n�chsten pattern selbst
zusammenbauen kannst:
/ wurde gew�hlt, um den pattern am anfang und am ende zu begrenzen,
kann aber auch jedes beliebige andere zeichen sein, welches m�glichst
nicht im pattern selbst vorkommen sollte, da es sonst escaped werden
muss.
^ steht f�r den anfang des strings
$ ende des strings
zul�ssige zeichen erscheinen innerhalb von []
die sonderzeichen habe ich alle grunds�tzlich mit backslash escaped,
da ich mir nicht sicher bin, welche davon in der pattern syntax verwendet
werden. punkt, komma und minus sind auf jedenfall solche kandidaten.

beachte bitte, dass dieser pattern keine ��� oder � zul�sst. kannst du
ja aber ggf ganz einfach nachtragen.

regards, Ringo 


php::bar PHP Wiki   -   Listenarchive