Maison > développement back-end > Tutoriel Python > Comment supprimer efficacement les emojis des chaînes en Python ?

Comment supprimer efficacement les emojis des chaînes en Python ?

DDD
Libérer: 2024-10-27 07:19:03
original
1097 Les gens l'ont consulté

How to Effectively Remove Emojis from Strings in Python?

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>
Copier après la connexion

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>
Copier après la connexion

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!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal