處理線上文字通常需要刪除表情符號,特別是在 Instagram 評論等情況下。本文探討了針對這種需求的解決方案,利用 PHP preg_replace 函數來有效地消除給定文字中的表情符號。
removeEmoji 函數利用一系列正規表示式來匹配和刪除輸入文字中的表情符號。每個表達式都針對代表各種表情符號類別的特定 unicode 範圍,包括表情符號、符號、運輸符號、裝飾符號等。
以下是此函數的範例:
public static function removeEmoji($text) {
$clean_text = "";
// Match Emoticons
$regexEmoticons = '/[\x{1F600}-\x{1F64F}]/u';
$clean_text = preg_replace($regexEmoticons, '', $text);
// Match Miscellaneous Symbols and Pictographs
$regexSymbols = '/[\x{1F300}-\x{1F5FF}]/u';
$clean_text = preg_replace($regexSymbols, '', $clean_text);
// Match Transport And Map Symbols
$regexTransport = '/[\x{1F680}-\x{1F6FF}]/u';
$clean_text = preg_replace($regexTransport, '', $clean_text);
// Match Miscellaneous Symbols
$regexMisc = '/[\x{2600}-\x{26FF}]/u';
$clean_text = preg_replace($regexMisc, '', $clean_text);
// Match Dingbats
$regexDingbats = '/[\x{2700}-\x{27BF}]/u';
$clean_text = preg_replace($regexDingbats, '', $clean_text);
return $clean_text;
}
請注意,此函數不會徹底刪除所有表情符號,因為有許多變體。然而,它為大多數常見情況提供了全面的解決方案。
免責聲明: 提供的所有資源部分來自互聯網,如果有侵犯您的版權或其他權益,請說明詳細緣由並提供版權或權益證明然後發到郵箱:[email protected] 我們會在第一時間內為您處理。
Copyright© 2022 湘ICP备2022001581号-3