burghi'sphp-dummies.de
PHP für Einsteiger und Fortgeschrittenere - an laufenden Scripten erklärt
06.02.2012, 11:22 Uhr - Impressum

Tutorials - RegExpressions - Basics - Teilausdrücke

Tutorials - RegExpressions
Basics: Teilausdrücke
Durch einklammern kann man Teilausdrücke definieren, die dann per Oder oder Widerholungszeichen versehen werden können.
So z.B. kann eine Internetadresse mit oder ohne "www." richtig sein:

Zeichenkettenanfang
--> "^"

"www." wenn es beliebt (? = 0x oder 1x)
--> "^(www\.)?"

2 bis 32 Buchstaben, Zahlen, Bindestriche:
--> "^(www\.)?[a-z0-9\-]{2,32}"

ein Punkt:
--> "^(www\.)?[a-z0-9\-]{2,32}\."

minimal 2, maximal 4 Buchstaben:
--> "^(www\.)?[a-z0-9\-]{2,32}\.[a-z]{2,4}"

Zeichenkettenende:
--> "^(www\.)?[a-z0-9\-]{2,32}\.[a-z]{2,4}$"
<?php
$reg = "^(www\.)?[a-z0-9\-]{2,32}\.[a-z]{2,4}$";

if(eregi($reg, "www.php-dummies.de")) echo "www.php-dummies.de stimmt<br />\n";
if(eregi($reg, "php-dummies.de")) echo "php-dummies.de stimmt<br />\n";
if(eregi($reg, "www.www.php-dummies.de")) echo "www.www.php-dummies.de stimmt<br />\n";
?>
Auch beim Oder kann das sinnvoll sein, will man z.B. in der Mitte eines Wortes ein A oder B zulassen:
<?php
$reg = "^PC-(A|B)86";
if(eregi($reg, "PC-A86")) echo "PC-A86 stimmt<br />\n";
if(eregi($reg, "PC-B86")) echo "PC-B86 stimmt<br />\n";
if(eregi($reg, "PC-C86")) echo "PC-C86 stimmt<br />\n";
if(eregi($reg, "PC-86")) echo "PC-86 stimmt<br />\n";
?>
© 2004-2005 - Impressum