PHP正則匹配中文字串

2021-07-24 20:59:22 字數 651 閱讀 2579

正則匹配中文漢字根據頁面編碼不同而略有區別

1.gbk/gb2312編碼:[x80-xff]+ 或 [xa1-xff]+

2.utf-8編碼:[x-x]+/u

$str = "使用者名稱123";

//把結果放在$chinese中

//gbk/gb2312使用:

preg_match_all("/[\x80-\xff]+/", $str, $chinese);

//utf-8 使用:

//preg_match_all("/[\x-\x]+/u", $str, $chinese);

print_r($chinese);

preg_match("/[\x-\x]+/u", $str);//匹配成功返回true,否則false

在使用utf-8匹配的時候如果出現亂碼,可以先把$str轉換成utf8格式;

$str= iconv('gbk','utf-8′,$str);

//或:

//$str= mb_convert_encoding($str,'utf-8','gbk');

iconv 使用說明

mb_convert_encoding 使用說明

**優惠券領取:

PHP正則匹配特定中文

php的正則匹配中文一直比較麻煩,要將漢字轉化為內碼才能匹配得到。這段時間需要用到這方面的東西,但是在網上找不到這方面的資料。所以不得不自己去研究,經過一番摸索。終於實現了特定中文的匹配。廢話少說,直接上 html 這是漢字 preg match all xba xba xd7 xd6 html,m...

PHP正則匹配title標題文字

傳入文章id 解析出文章標題 public function getbooknamebyid aid else 設定選項,包括url curl setopt ch,curlopt url,url curl setopt ch,curlopt returntransfer,1 不自動輸出內容 curl...

php中文字串翻轉

在utf 8編碼下,在使用strlen 時,乙個中英文本元是佔乙個位元組,而乙個中文字元是佔三個位元組。因此在呼叫strrev函式時,如果字串是純英文,不會出現什麼問題,但是如果字元中含有中文則會出現亂碼。str hello echo strlen str 5 echo strrev str oll...