gpt4 book ai didi

PHP : writing a simple removeEmoji function

转载 作者:IT王子 更新时间:2023-10-28 23:44:17 25 4
gpt4 key购买 nike

我正在寻找一个简单的功能,可以从 instagram 评论中删除表情符号字符。我现在尝试过的(我在 SO 和其他网站上找到的大量示例代码):

// PHP class
public static function removeEmoji($string)
{
// split the string into UTF8 char array
// for loop inside char array
// if char is emoji, remove it
// endfor
// return newstring
}

任何帮助将不胜感激

最佳答案

我认为 preg_replace 函数是最简单的解决方案。

作为EaterOfCode建议,我阅读了 wiki page并编码了新的正则表达式,因为 SO(或其他网站)的答案似乎都不适用于 Instagram 照片标题(API 返回格式)。注意:/u 标识符必须匹配\x 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;
}

该函数不会删除所有表情符号,因为还有更多表情符号,但您明白了。

请引用unicode.org - full emoji list (感谢Epoc)

关于PHP : writing a simple removeEmoji function,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12807176/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com