Dies ist mein Merkzettel für Regläre ausdrücke in PHP, die ich immer mal wieder brauche und schnell wieder finden möchte. Die Seite wird mit der Zeit wachsen und ichwerde immer mal wieder ein paar preg_replace Ausdücke hinzufügen.
1. Aus einem String nur die Zahlen ausfiltern
$line = preg_replace(‘/[^0-9]/’, ”, $line);
Alle Zeichen die nicht 0-9 sind, werden aus dem String entfernt.
Das ganze geht auch mit Hexadezimalzahlen:
$line = preg_replace(‘/[^0-9abcdefABCDEF]/’, ”, $line);
2. Alle Zeichen durch ein “-” ersetzen, ausser Buchstaben und Zahlen
$string = preg_replace(‘/[^a-zA-Z0-9]/’, ‘-’, $string);
* Auchtung: Umlaute werden hier nicht berücksichtigt
3. Umlaute umwandeln. Diesen Schritt kann man gut mit Schritt 2 kombinieren.
$p[0] = ‘/ä/’;
$p[1] = ‘/Ä/’;
$p[2] = ‘/ö/’;
$p[3] = ‘/Ö/’;
$p[4] = ‘/ü/’;
$p[5] = ‘/Ü/’;
$p[6] = ‘/ß/’;
$r[0] = “ae”;
$r[1] = “AE”;
$r[2] = “oe”;
$r[3] = “OE”;
$r[4] = “ue”;
$r[5] = “UE”;
$r[6] = “ss”;
$string= preg_replace($p, $r, $string);
Jetzt sind alle Umlaute durch entsprechende Kombinationen aus ae oe ue ersetzt worden. Dabei wird auch zwischen Groß- und kleinbuchstaben unterschieden.
Weiterführende Themen: