我曾经preg_match()
将一些特殊字符列入黑名单,我的要求是每当字符串包含这些特殊字符时,我都会返回一个无效的。
$str = "adasdasasd*";
if(preg_match('/^[^~`!@#$%\^&\*\(\)]+$/',$str)) {
echo "valid";
}
else {
echo "invalid";
}
这将返回invalid,这是正确的。但是,到目前为止,我对这个否定感到很困惑preg_match
。有人可以至少简要解释一下 negate onpreg_match()
吗?而且,我提供的正则表达式preg_match()
有什么缺点吗?