中文是一種通行於中國大陸、台灣、新加坡、馬來西亞等地區的語言,書寫依賴漢字。漢字由獨特且複雜的筆劃和部首組成,語法結構相對簡單,主要依靠詞性和語序表達意義。
計算機中需要對中文進行編碼以便存儲和處理,常用的編碼方式主要有:
GB2312 編碼
Unicode 編碼
其中,GB2312 是雙字節編碼,涵蓋約6763個中文字符,包括常用漢字和符號。 Unicode編碼包含全球所有字符,中文字符通常佔用兩個字節。
在PHP中,可以通過正則表達式匹配Unicode範圍內的中文字符,從而實現僅保留中文的功能。
// 刪除文本中的非中文字符
function remove_non_chinese($text) {
// 只保留中文字符
$pattern = '/[\x{4e00}-\x{9fa5}]+/u';
return preg_replace($pattern, '', $text);
}
以上代碼利用了Unicode編碼範圍\x{4e00}-\x{9fa5}來匹配中文漢字,標誌u表示採用Unicode模式。
$text = 'Hello, 你好,我是一個 PHP 開發者。';
調用函數刪除非中文字符:
$chinese_only = remove_non_chinese($text);
echo $chinese_only; // 輸出:你好我是一個PHP開發者
運行結果顯示,英文和空格被成功過濾,只剩中文字符。
此方法主要匹配簡體中文字符,對於繁體字支持有限。此外,句號、逗號等標點符號也會被剔除。具體應用時可根據需求對正則表達式進行調整,確保符合實際場景。