J'analyse le message informel de style de conversation pour le sentiment et d'autres informations. J'ai besoin que toutes les émoticônes soient remplacées par leur signification réelle, afin de faciliter l'analyse du message par le système.PHP - Remplacer l'émoticône par la signification
Au moment où j'ai le code suivant:
$str = "Am I :) or :(today?";
$emoticons = array(
':)' => 'happy',
':]' => 'happy',
':(' => 'sad',
':[' => 'sad',
);
$str = str_replace(array_keys($emoticons), array_values($emoticons), $str);
Cela fait un remplacement de chaîne directe, et ne prend donc pas en compte si l'émoticône est entouré d'autres personnages.
Comment puis-je utiliser regex et preg_replace
pour déterminer s'il s'agit réellement d'une émoticône et non d'une chaîne?
Comment puis-je étendre ma baie de sorte que l'élément happy
par exemple puisse contenir les deux entrées; :)
et :]
?