/**
* 验证字符串知否包含特殊字符
* @param string $string
* @return mixed
* */
public function hasSpecialCharacter($string){
$rule = '/[\?ˉˇ\¨\〃々~‖…\‘\’\“\”「」『』〖〗【】±×÷\∶\∧∨∑∏∪∩∈\∷√⊥\∥∠⌒⊙∫∮≡≌≈∽∝≠≮≯≤≥∞∵∴♂♀°\′\″℃\$¤¢£‰§№☆★○●◎◇◆□☑■△▲※→←↑↓〓\!\"#¥%&\'\*\+\.\/\:\;\<\=\>\?\@\^\`\?ぁあぃいぅうぇえぉおかがきぎくぐけげこごさざしじすずせぜそぞただちぢっつづてでとどなにぬねのはばぱひびぴふぶぷへべぺほぼぽまみむめもゃやゅゆょよらりるれろゎわゐゑをん\?ァアィイゥウェエォオカガキギクグケゲコゴサザシジスズセゼソゾタダチヂッツヅテデトドナニヌネノハバパヒビピフブプヘベペホボポマミムメモャヤュユョヨラリルレロヮワヰヱヲンヴヵヶ\?\?ΓΔΘΞΣΥΦΧΨΩαβγδεζηθικλμνξοπρστυφχψω︵︶︹︺\^﹀︽︾﹁﹂﹃﹄︻︼︷︸\︱\︳︴\?АБВГДЕЁЖЗИЙКЛМНОПРСТУФХЦЧШЩЪЫЬЭЮЯабвгдеёжзийклмнопрстуфхцчшщъыьэюя\ˊ\ˋ\˙–―‥\‵℅℉↖↗↘↙∕∟\∣≒≦≧⊿═║╒╓╔╕╖╗╘╙╚╛╜╝╞╟╠╡╢╣╤╥╦╧╨╩╪╫╬╭╮╯╰\╱\╲╳▁▂▃▄▅▆▇▉▊▋▌▍▎\▏▓▔\▕▼▽◢◣◤◥☉⊕〒\〝\〞\?āáǎàēéěèīíǐìōóǒòūúǔùǖǘǚǜüêɑ\?ńňɡㄅㄆㄇㄈㄉㄊㄋㄌㄍㄎㄏㄐㄑㄒㄓㄔㄕㄖㄗㄘㄙㄚㄛㄜㄝㄞㄟㄠㄡㄢㄣㄤㄥㄦ\ㄧㄨㄩ\〡〢〣〤〥〦〧〨〩㊣㎎㎏㎜㎝㎞㎡㏄㏎㏑㏒㏕\︰¬¦℡㈱\?\‐┌┍┎┏┐┑┒┓└┕┖┗┘┙┚┛├┝┞┟┠┡┢┣┤┥┦┧┨┩┪┫┬┭┮┯┰┱┲┳┴┵┶┷┸┹┺┻┼┽┾┿╀╁╂╃╄╅╆╇╈╉╊╋\﹑\﹒\﹔\﹕\﹖\﹗﹟\﹠﹡〇\﹢\﹣\﹤\﹥\﹦\﹨\﹩\﹪\﹫\?\━\│\┃\┄\┅┆┇\┈\┉┊┋ー\゛゜\ヽヾ〆ゝゞ﹉﹊﹋﹌﹍﹎\﹐]/';
// 上面正则存档,正则检测有问题,改用数组(数组可以获取存在哪些特殊字符)
$rule1 = '?ˉˇ¨〃々~‖…‘’“”「」『』〖〗【】±×÷∶∧∨∑∏∪∩∈∷√⊥∥∠⌒⊙∫∮≡≌≈∽∝≠≮≯≤≥∞∵∴♂♀°′″℃$¤¢£‰§№☆★○●◎◇◆□☑■△▲※→←↑↓〓!"#¥%&\'*+./:;<=>?@^`?ぁあぃいぅうぇえぉおかがきぎくぐけげこごさざしじすずせぜそぞただちぢっつづてでとどなにぬねのはばぱひびぴふぶぷへべぺほぼぽまみむめもゃやゅゆょよらりるれろゎわゐゑをん?ァアィイゥウェエォオカガキギクグケゲコゴサザシジスズセゼソゾタダチヂッツヅテデトドナニヌネノハバパヒビピフブプヘベペホボポマミムメモャヤュユョヨラリルレロヮワヰヱヲンヴヵヶ??ΓΔΘΞΣΥΦΧΨΩαβγδεζηθικλμνξοπρστυφχψω︵︶︹︺^﹀︽︾﹁﹂﹃﹄︻︼︷︸︱︳︴?АБВГДЕЁЖЗИЙКЛМНОПРСТУФХЦЧШЩЪЫЬЭЮЯабвгдеёжзийклмнопрстуфхцчшщъыьэюяˊˋ˙–―‥‵℅℉↖↗↘↙∕∟∣≒≦≧⊿═║╒╓╔╕╖╗╘╙╚╛╜╝╞╟╠╡╢╣╤╥╦╧╨╩╪╫╬╭╮╯╰╱╲╳▁▂▃▄▅▆▇▉▊▋▌▍▎▏▓▔▕▼▽◢◣◤◥☉⊕〒〝〞?āáǎàēéěèīíǐìōóǒòūúǔùǖǘǚǜüêɑ?ńňɡㄅㄆㄇㄈㄉㄊㄋㄌㄍㄎㄏㄐㄑㄒㄓㄔㄕㄖㄗㄘㄙㄚㄛㄜㄝㄞㄟㄠㄡㄢㄣㄤㄥㄦㄧㄨㄩ〡〢〣〤〥〦〧〨〩㊣㎎㎏㎜㎝㎞㎡㏄㏎㏑㏒㏕︰¬¦℡㈱?‐┌┍┎┏┐┑┒┓└┕┖┗┘┙┚┛├┝┞┟┠┡┢┣┤┥┦┧┨┩┪┫┬┭┮┯┰┱┲┳┴┵┶┷┸┹┺┻┼┽┾┿╀╁╂╃╄╅╆╇╈╉╊╋﹑﹒﹔﹕﹖﹗﹟﹠﹡〇﹢﹣﹤﹥﹦﹨﹩﹪﹫?━│┃┄┅┆┇┈┉┊┋ー゛゜ヽヾ〆ゝゞ﹉﹊﹋﹌﹍﹎﹐';
if(!empty($string)) {
// str_split() 函数对中文和特殊字符不友好,使用正则preg_split()函数把字符串分割成字符数组
$string_arr = array_unique(preg_split('/(?<!^)(?!$)/u', $string)); // 校验字符串转数组去重
$rule_arr = array_unique(preg_split('/(?<!^)(?!$)/u', $rule1)); // 给定特殊字符串转数组去重
$common_arr = array_intersect($string_arr, $rule_arr); // 获取两数组的交集数组
if(count($common_arr)>0){
return implode(',',$common_arr); // $common_arr 不为空即存在特殊字符,返回存在的特殊字符
}
}
return false;
}
特殊字符正则匹配
最新推荐文章于 2024-05-25 14:01:12 发布