| 編碼 | 漢字位元組範圍 | 正則模式 | 修飾符 |
|---|---|---|---|
| GBK/GB2312 | 雙位元組:0x81-0xFE | /[\x80-\xFF]+/ 或 /[\xA1-\xFF]+/ | 無 |
| UTF-8 | 3-4 位元組:U+4E00-U+9FA5(基本漢字) | /[\x{4e00}-\x{9fa5}]+/u | u (PCRE_UTF8) |
學習 [1] => 是一件快樂的事 ) */
PHP [1] => 程式設計語言 ) */
u 會按位元組匹配,導致錯誤結果。\x{3400}-\x{9fa5}。mb_strpos/mb_substr 或分詞庫(jieba-php)。UTF-8 專案統一用 /[\x{4e00}-\x{9fa5}]+/u(或擴展至 \x{3400}-\x{9fa5}),務必加 u 修飾符。GBK 舊專案用 /[\x80-\xFF]+/。判斷純中文用 ^...$ 錨點。現代專案建議統一 UTF-8,避免編碼地獄。