Teil von  SELFPHP   Teil von  Praxisbuch
Letztes Update: 16.08.2005 17:53:45


Navigation

Seite News *

Seite Startseite
Seite Über SELFPHP
Seite Werbung
Seite Kontakt
Seite Forum *
Seite Download *
Seite SELFPHP Banner *
Seite SELFPHP in Buchform
Seite Newsletter *
Seite Impressum

 
* Link führt ins Internet


Anbieterverzeichnis
Informieren Sie sich über die Unternehmen in unserem Anbieterverzeichnis!  

 


SELFPHP Forum
Fragen rund um die Themen PHP? In über 79.000 Beiträgen finden Sie sicher die passende Antwort!  


Newsletter
Abonnieren Sie hier den kostenlosen SELFPHP Newsletter!

Vorname: 
Name:
E-Mail:
 



 

Reguläre Ausdrücke




Neben Array- und Stringfunktionen nehmen die regulären Ausdrücke (engl. regular expressions) und ihre Funktionen, in PHP einen grossen Stellenwert ein. Mit Hilfe der regulären Ausdrücke lassen sich Suchmuster für Zeichenketten realisieren, welche sowohl für einfache als auch komplexe Suchfunktionen eingesetzt werden können. Sie sind sogar in der Lage unter Verwendung regulärer Ausdrücke, Teile einer Zeichenkette zu ersetzen, zu löschen oder zu ändern. Bei der Entwicklung von Webanwendungen müssen oft grosse Mengen von dynamischen Textdaten verarbeitet werden. Reguläre Ausdrücke sind besonders wertvoll für jene Entwickler, die umfangreiche und komplexe Anwendungen schreiben.

Reguläre Ausdrücke sind allerdings anfangs sehr gewöhnungsbedürftig. Der Hauptgrund, wieso in einigen PHP-Skripten merkwürdige, kryptisch anmutende Zeichenfolgen vorkommen, ist der Einsatz von regulären Ausdrücken.

Hier zwei Beispiele, denen Sie im Zusammenhang mit regulären Ausdrücken sicherlich begegnen werden, wie z.B. der E-Mail Validation und der Überprüfung eines festgelegten Formats.


Beispiel - E-Mail Validation



<?php
// Regulärer Ausdruck
$reg_ausdruck "^[A-Za-z0-9](([_\.\-]?[a-zA-Z0-9]+)*)@([A-Za-z0-9]+)(([\.\-]?[a-zA-Z0-9]+)*)\.([A-Za-z]{2,})$";

// Teststring
$test_email "matthiask@atomicscript.de";

// Ausgabe - E-Mail - OK!
if (ereg($reg_ausdruck$test_email)) {
    echo 
"E-Mail - OK!";
} else {
    echo 
"E-Mail - Fehlerhaft!";
}
?>



Hier einige Schreibweisen, die zugelassen und nicht zugelassen werden.


Zugelassen

ma_tthiask@atomic.script.de
ma.tt-hias-k@ato-mic-script.info
matthias1k@123.de



Nicht zugelassen

matthiask@atomicl_script.de
ma&tthiask@atomiscript.de1
.matthiask@atomicr#script.de


Hinweis: In diesem Beispiel kam die ereg()-Funktion zum Einsatz, welche zur Verarbeitung von regulären Ausdrücken dient. Sie werden weiter unten in diesem Abschnitt mehr über die Funktion erfahren.




Beispiel - Schreibweise von HTML hexadezimal Farbwerte



<?php
// Regulärer Ausdruck
$reg_ausdruck "^#?([a-f]|[A-F]|[0-9]){3}(([a-f]|[A-F]|[0-9]){3})?$";

// Teststring
$test_farbe "#ff0000";

// Ausgabe - Farbwert - OK!
if (ereg($reg_ausdruck$test_farbe)) {
    echo 
"Farbwert - OK!";
} else {
    echo 
"Farbwert - Fehlerhaft!";
}
?>



Hier einige Schreibweisen, die zugelassen und nicht zugelassen werden.


Zugelassen

#00ccff
#099
ff00ff



Nicht zugelassen

red
0x00ff00
#ffcc0


Mit Hilfe der regulären Ausdrücken können Sie, zusätzlich effizient und flexibel nach Zeichenketten suchen und diese ersetzen. Bei bisherigen Suchen- und Ersetzen-Vorgängen, musste der genaue Text eingegeben werden, nach dem gesucht werden soll. Dadurch wird die Suche nach dynamischen Daten recht aufwendig, wenn nicht gar unmöglich.

Sollten Sie einen regulären Ausdruck einsetzen wollen, brauchen Sie zunächst etwas, das Sie durchsuchen wollen. Im einfachsten Fall kann es sich um die in einer Variablen enthaltenen Zeichenkette handeln, oder um Werte, die in einem Array gespeichert sind. Natürlich kann es sich bei der zu durchsuchenden Zeichenkette auch um Datensätze einer Datenbank oder um Zeilen einer Datei handeln.


Zusammenfassung

Fassen wir unsere bisherigen Kenntnisse über reguläre Ausdrücke zusammen:
. Ein regulärer Ausdruck ist eine Folge oder ein Muster von Zeichen, welches beim Suchen oder Ersetzen mit einer Zeichenkette verglichen wird.


Arbeitsvorgänge

. Es wird entweder eine Übereinstimmung festgestellt oder keine.
. Es ist auch möglich, ein übereinstimmendes Zeichenmuster festzustellen und es durch eine andere Zeichenkette zu ersetzen.


Letztes Update: {UPDATEZEIT} Reguläre Ausdrücke für einzelne Zeichen
Letztes Update: {UPDATEZEIT} Reguläre Ausdrücke für Zeichenketten
Letztes Update: {UPDATEZEIT} Variablen in regulären Ausdrücken
Letztes Update: {UPDATEZEIT} Reguläre Ausdrücke mit Alternativen
Letztes Update: {UPDATEZEIT} Rangfolge und Klammerung in regulären Ausdrücken
Letztes Update: {UPDATEZEIT} Funktionen für reguläre Ausdrücke
Letztes Update: {UPDATEZEIT} Ergänzungen zu reguläre Ausdrücke
Letztes Update: {UPDATEZEIT} Vertiefung zu reguläre Ausdrücke
Letztes Update: {UPDATEZEIT} Hinweise zur Optimierung
Letztes Update: {UPDATEZEIT} Einsatz der PCRE-Funktionen
Letztes Update: {UPDATEZEIT} Einsatz der Funktionen im POSIX-Stil
Letztes Update: {UPDATEZEIT} Programme zu reguläre Ausdrücke

 



 




 sponsored by

Host Europe


HighText iBusiness


Host Europe




© 2001-2006 E-Mail SELFPHP - Damir Enseleit, info@selfphp.deImpressumKontakt
© 2005-2006 E-Mail PHP5 Praxisbuch - Matthias Kannengiesser, m.kannengiesser@selfphp.de