Sonderzeichen innerhalb eckiger Klammern in PHP
Sonderzeichen innerhalb von [] werden zu gewöhnlichen
Zeichen. Das bedeutet, dass sie nicht mit einem
Backslash maskiert werden müssen.
Beispiel
In diesem Beispiel sieht das Suchmuster so aus:
zwischen den X beliebiger Buchstabe 'a', 'b',
'c' oder ein Punkt:
<?php
$str = 'xax xbx xcx xdx x.x x@x';
$res = preg_replace('#x[abc.]x#', '!', $str);
?>
Als Ergebnis wird in die Variable folgendes geschrieben:
'! ! ! xdx ! x@x'
Beispiel
In diesem Beispiel sieht das Suchmuster so aus: zwischen den X beliebiger Kleinbuchstabe oder ein Punkt:
<?php
$str = 'xax xbx xcx x@x';
$res = preg_replace('#x[a-z.]x#', '!', $str);
?>
Als Ergebnis wird in die Variable folgendes geschrieben:
'! ! ! x@x'
Praktische Aufgaben
Gegeben ist der String:
<?php
$str = 'aba aea aca aza axa a.a a+a a*a';
?>
Schreiben Sie einen regulären Ausdruck, der die Strings
'a.a', 'a+a', 'a*a' findet,
ohne die anderen zu berühren.
Gegeben ist der String:
<?php
$str = 'xaz x.z x3z x@z x$z xrz';
?>
Schreiben Sie einen regulären Ausdruck, der die Strings
nach dem Muster findet: Buchstabe 'x', dann KEIN
Punkt, KEIN Klammeraffe und KEIN Dollarzeichen, und dann Buchstabe
'z'.