PHP preg_match只有特殊字符

时间:2017-10-06 10:03:32

标签: php preg-match

我尝试找到一个preg_match来过滤包含 特殊字符的字符串,例如 -

但是,字符串本身可以包含特殊字符,但它不应该只是特殊字符。

任何想法如何做到这一点?

如果string只包含特殊字符,则结果应返回true。像

这样的东西
if(preg_match('//',$string)) echo $string; //I leave the pattern empty as this is the actual question.

1 个答案:

答案 0 :(得分:2)

您需要匹配任何字母数字字符串。

$one=  "%^&";
$two = "asd%asd";


function notOnlySpecialChars($str) {
    if (preg_match('/[A-Za-z0-9]/', $str)) { //Replaced _ with -
        return true;
    } else {
        return false;
    }
}
notOnlySpecialChars($one); //false
notOnlySpecialChars($two); //true