如何将表情符号从彼此的蟒蛇中分离出来? [英] How to split emoji from each other python?

查看:0
本文介绍了如何将表情符号从彼此的蟒蛇中分离出来?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我需要拆分表情符号 例如

EM = 'Hey 😷😷😷'
EM.split()

如果我们拆分它,我们将拥有

['Hey' ,'😷😷😷']

我想要

['hey' , '😷' , '😷' , '😷']

我希望它应用于所有表情符号。

推荐答案

您应该能够使用https://pypi.org/project/emoji/中的get_emoji_regexp以及通常的split函数。所以大概是:

import functools
import operator
import re

import emoji

em = 'Hey 😷😷😷'
em_split_emoji = emoji.get_emoji_regexp().split(em)
em_split_whitespace = [substr.split() for substr in em_split_emoji]
em_split = functools.reduce(operator.concat, em_split_whitespace)

print(em_split)

输出:

['Hey', '😷', '😷', '😷']

一个更复杂的案例,带有家族、肤色修饰符和标志:

em = 'Hey 👨‍👩‍👧‍👧👨🏿😷😷🇬🇧'
em_split_emoji = emoji.get_emoji_regexp().split(em)
em_split_whitespace = [substr.split() for substr in em_split_emoji]
em_split = functools.reduce(operator.concat, em_split_whitespace)

for separated in em_split:
    print(separated)

输出:

Hey
👨‍👩‍👧‍👧
👨🏿
😷
😷
🇬🇧

(我认为在带有家庭表情符号的列表上使用print是有问题的,因此单独打印列表中的每一项。Printing family emoji, with U+200D zero-width joiner, directly, vs via list)

这篇关于如何将表情符号从彼此的蟒蛇中分离出来?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆