^[A-Za-z0-9\u4E00-\u9FA5-]{2,16}$
\u4e00-\u9fa5;
php正則表達式匹配漢字:
根據頁面編碼:
1.gb231
<?php
$str="i love 你 my 祖國!";
preg_match_all("/[\x80-\xff]+/",$str,$match);
print_r($match);
?>
2.utf-8
<?php
$str="zhong中國guo我愛你";
preg_match_all("/[\x{4E00}-\x{9FA5}]+/u",$str,$match);(模式修飾符u代表模式字符串是utf-8模式)
print_r($match);
?>
引用:
正則匹配中文漢字
正則匹配中文漢字根據頁面編碼不同而略有區別:
- GBK/GB2312編碼:[x80-xff]+ 或 [xa1-xff]+
- UTF-8編碼:[x{4e00}-x{9fa5}]+/u
例子:
<?php $str = "學習php是一件快樂的事。"; preg_match_all("/[x80-xff]+/", $str, $match); //UTF-8 使用: //preg_match_all("/[x{4e00}-x{9fa5}]+/u", $str, $match); print_r($match); ?>
輸出:
Array ( [0] => Array ( [0] => 學習 [1] => 是一件快樂的事。 ) )