php的preg_replace过滤emoji字符,要怎么做

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了php的preg_replace过滤emoji字符,要怎么做相关的知识,希望对你有一定的参考价值。

'阿斯顿飞自行车,又发现一个bug <img src="/STATIC/img/biaoqing/1.gif" alt="[撇嘴]"> <img class="emoji" draggable="false" alt="😆" src="/STATIC/img/biaoqing/436.gif">'
我想把img替换为alt里的内容,后面那个alt是emoji字符

参考技术A

php的preg_replace函数是  执行一个正则表达式的搜索和替换其具体用法如下

语法:

preg_replace (正则表达式, 替换成, 字符串, 最大替换次数【默认-1,无数次】, 替换次数)

实例:

<?php// 把heigth高度属性删除,并添加width="100%"
$str = '<div><p>12312321</p><img src="xx.jpg" height="213" /><span>111</span><img src="xz.jpg" /></div>';
$str = preg_replace("/height\\=\\"[0-9]+?\\"/","",$str);
$str1 = preg_replace("/src=\\"(.+?)\\"/","src=\\"$1\\" width=\\"100%\\"",$str);
print_r($str1);
?>

使用php过滤emoji表情

    /**
     * 过滤字符串中表情
     * @param $str string 昵称
     * @return string
     */
    public function filterEmoji($str) 
        $str = preg_replace_callback(‘/./u‘, function (array $match) 
            return strlen($match[0]) >= 4 ? ‘‘ : $match[0];
        , $str);
        return $str;
    

以上是关于php的preg_replace过滤emoji字符,要怎么做的主要内容,如果未能解决你的问题,请参考以下文章

php过滤文字中的表情字符和mysql服务端对emoji的支持

使用php过滤emoji表情

preg_replace 密码过滤器

preg_replace 保留字母数字 + 拉丁语 + 表情符号

移除微信昵称中的emoji字符

PHP preg_replace() 正则替换所有符合条件的字符串