考虑以下清单:
a_list = [' me así, bla es se ds ']
如何在新列表中提取 a_list 中的所有表情符号?:
a_list
new_lis = [' ']
我尝试使用regex,但我没有所有可能的表情编码。
发布于 2017-03-31 17:39:14
您可以使用 emoji 库。您可以通过检查是否包含在 emoji.UNICODE_EMOJI 中来检查单个代码点是否是表情符号编码点。
emoji
emoji.UNICODE_EMOJI
import emoji def extract_emojis(s): return ''.join(c for c in s if c in emoji.UNICODE_EMOJI['en'])
发布于 2018-03-12 19:05:16
我认为重要的是要指出,前面的答案不适用于像这样的表情符号,因为它由4个表情符号组成,使用将返回4个不同的表情符号。同样的表情和皮肤颜色类似。
我的解决方案
包括 emoji 和 regex 模块。regex模块支持识别字素簇(呈现为单个字符的Unicode码点序列),因此我们可以像一样对emojis进行计数。
regex
import emoji import regex def split_count(text): emoji_list = [] data = regex.findall(r'\X', text) for word in data: if any(char in emoji.UNICODE_EMOJI['en'] for char in word): emoji_list.append(word)