Suppression des emojis d'une chaîne en Python
Cet article aborde le problème de la suppression des emojis d'une chaîne donnée en Python.
Dans le code Python fourni, le modèle d'expression régulière "/[x{1F601}-x{1F64F}]/u" ne gère pas correctement les emojis Unicode. Par conséquent, vous recevez une erreur « caractère invalide » lorsque vous recherchez des chaînes commençant par « xf ».
Une approche alternative consiste à utiliser un modèle d'expression régulière Unicode plus complet :
<code class="python">emoji_pattern = re.compile("[" u"\U0001F600-\U0001F64F" # emoticons u"\U0001F300-\U0001F5FF" # symbols & pictographs u"\U0001F680-\U0001F6FF" # transport & map symbols u"\U0001F1E0-\U0001F1FF" # flags (iOS) "]+", flags=re.UNICODE)</code>
Ce modèle correspond à une gamme plus large d'emojis en spécifiant des plages de caractères Unicode.
Un autre aspect important est d'utiliser u'' pour créer une chaîne Unicode sur Python 2. De plus, les données d'entrée doivent être converties en Unicode à l'aide de texte. = data.decode('utf-8').
<code class="python">import re text = u'This dog \U0001f602' print(text) # with emoji emoji_pattern = re.compile("[" u"\U0001F600-\U0001F64F" # emoticons u"\U0001F300-\U0001F5FF" # symbols & pictographs u"\U0001F680-\U0001F6FF" # transport & map symbols u"\U0001F1E0-\U0001F1FF" # flags (iOS) "]+", flags=re.UNICODE) print(emoji_pattern.sub(r'', text)) # no emoji</code>
Ce code lit la chaîne d'entrée 'text', qui contient un emoji. Il applique ensuite le « emoji_pattern » pour identifier et supprimer tous les emojis. Le résultat est une chaîne sans aucun emoji.
Veuillez noter que le modèle d'expression régulière fourni peut ne pas capturer tous les emojis existants, car la norme Unicode continue d'évoluer. Pour une liste complète des caractères emoji Unicode, reportez-vous à « Emoji et Dingbats ».
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!