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