我正在编写表单验证类,并希望在验证中包含正则表达式.因此,提供的正则表达式不保证有效.
我怎样(有效地)检查正则表达式是否有效?
解决方法:
在preg_ *调用中使用该模式.如果函数返回false,则模式可能存在问题.据我所知,这是检查正则表达式模式在PHP中是否有效的最简单方法.
这是一个指定正确类型的布尔检查的示例:
$invalidPattern = 'i am not valid regex';
$subject = 'This is some text I am searching in';
if (@preg_match($invalidPattern, $subject) === false) {
// the regex Failed and is likely invalid
}