我今天遇到了PHP函数preg_match的问题。
我想匹配一个字符串($test='123456789012'
)或$test = NULL
中的确切12个字符
我的问题是OR NULL调用如何RegEx为这个NULL变量。
试过:preg_match("/^([\w.-]{12})|(NULL)$/",$test);
NULL
值不是字母为NULL的字符串文字,所以如果你在NULL
中搜索NULL,它们永远不会匹配。
你可以做
if($test)
preg_match("/^([\w.-]{12})$/",$test);
else
//whatever works
稍晚,但你可以尝试'^ $'来匹配NULL:
preg_match('/^[\w.-]{12}$|^$/',$test);