微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

php – 匹配并替换字符串中的表情符号 – 最有效的方法是什么?

Wikipedia定义了许多人们可以使用的表情符号.我想将此列表与字符串中的单词匹配.我现在有这个:

$string = "Lorem ipsum :-) dolor :-| samet";
$emoticons = array(
  '[HAPPY]' => array(' :-) ',' :) ',' :o) '),//etc...
  '[SAD]'   => array(' :-( ',' :( ',' :-| ')
);
foreach ($emoticons as $emotion => $icons) {
  $string = str_replace($icons," $emotion ",$string);
}
echo $string;

输出

Lorem ipsum [HAPPY] dolor [SAD] samet

所以原则上这是有效的.但是,我有两个问题:

>正如你所看到的,我在数组中的每个表情符号周围放置空格,例如’:-)’而不是’:-)’这使得数组在我看来不太可读.有没有办法存储没有空格的表情符号,但仍然匹配$string,周围有空格? (和代码现在一样有效吗?)
>或者有没有办法将表情符号放在一个变量中,然后在空格上爆炸以检查$string?就像是

$emoticons = array(
  ‘[HAPPY]’=> “>:]

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐