Reguläre Ausdrücke¶
PHP gibt, je nach Konfiguration des error-reporting bei einem fehlerhaften Pattern eine PHP-Warnung aus.
\preg_match('/wrong pattern', 'test');
// → PHP Warning: preg_match(): No ending delimiter '/' found in
Mit Hilfe der Klasse \Alvine\Types\RegularExpression wird die Warnung gekapselt und die Gültigkeit des regulären Ausdruck
kann sicher geprüft werden. Im Falle eines ungültigen Ausdruckes wird eine Exception geworfen, die über try/catch behandelt
werden kann.
try {
$regex=new \Alvine\Types\RegularExpression('/[a-z]+/');
echo (string) $regex;
// → /[a-z]+/
} catch(\Alvine\Types\RegularExpressionException $e) {
}