python 去除string字符串里的emoji表情

有些大模型不支持输入emoji,需要去除字符串里的emoji表情,网上的一些方法只是去除部分emoji表情,这里给出一个自认为比较好用去除全面emoji的方法

import re
import json
import emoji

# text = u'This is a smiley face \U0001f602'
# print(text) # with emoji

text = "【🌈夏日优雅气质穿搭 | 黑色连衣裙的魅力!💃👗】
黑色连衣裙是每个女生衣柜里必不可少的一件单品!它不仅能够展现女性的优雅气质,还能让你在任何场合都显得得体大方!👠✨……这款黑色连衣裙设计独特,露肩的设计增添了一丝性感,腰部的褶皱设计则凸显了身材曲线!💃👗……配上一双高跟鞋,瞬间提升气场!👠✨……无论是参加晚宴还是约会,穿上这件黑色连衣裙,你一定会成为全场焦点!💃👗……"
print(text)

# 把emoji变成字符串形式 比如🌈变成:rainbow:
result_text = emoji.demojize(text)
print(result_text) # 【:rainbow:夏日优雅气质穿搭 | 黑色连衣裙的魅力!:woman_dancing::dress:】黑色连衣裙是每个女生衣柜里必不可少的一件单品!它不仅能够展现女性的优雅气质,还能让你在任何场合都显得得体大方!:high-heeled_shoe::sparkles:……这款黑色连衣裙设计独特,露肩的设计增添了一丝性感,腰部的褶皱设计则凸显了身材曲线!:woman_dancing::dress:……配上一双高跟鞋,瞬间提升气场!:high-heeled_shoe::sparkles:……无论是参加晚宴还是约会,穿上这件黑色连衣裙,你一定会成为全场焦点!:woman_dancing::dress:……

# 设置规则,匹配string里的“:xxx:”
pattern = r":[a-z]+[_*[a-z]*]*[-*[a-z]*[_*[a-z]*]*]*:"
matches = re.findall(pattern, result_text)
print(matches) # [':rainbow:', ':woman_dancing:', ':dress:', ':high-heeled_shoe:', ':sparkles:', ':woman_dancing:', ':dress:', ':high-heeled_shoe:', ':sparkles:', ':woman_dancing:', ':dress:']

# 去除emoji
for matche in matches:
    result_text = result_text.replace(matche, "")
print(result_text) # 【夏日优雅气质穿搭 | 黑色连衣裙的魅力!】黑色连衣裙是每个女生衣柜里必不可少的一件单品!它不仅能够展现女性的优雅气质,还能让你在任何场合都显得得体大方!……这款黑色连衣裙设计独特,露肩的设计增添了一丝性感,腰部的褶皱设计则凸显了身材曲线!……配上一双高跟鞋,瞬间提升气场!……无论是参加晚宴还是约会,穿上这件黑色连衣裙,你一定会成为全场焦点!……

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值