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) {
}