Python 中如何删除文本里的 emoji 表情符号
·
要在 Python 中删除文本里的这种表情符号(如 🙂、😂、👍 等 emoji),可以用以下几种方法。
方法 1:使用正则表达式删除 emoji
这是最通用的一种方式,直接过滤所有 emoji 字符:
import re
def remove_emoji(text):
emoji_pattern = re.compile(
"["
"\U0001F600-\U0001F64F" # 表情符号
"\U0001F300-\U0001F5FF" # 符号 & 图标
"\U0001F680-\U0001F6FF" # 交通 & 地图符号
"\U0001F1E0-\U0001F1FF" # 旗帜 (iOS)
"\U00002700-\U000027BF" # 杂项符号
"\U0001F900-\U0001F9FF" # 补充符号
"\U0001FA70-\U0001FAFF" # 额外补充符号
"]+",
flags=re.UNICODE
)
return emoji_pattern.sub(r'', text)
text = "你好🙂,今天真不错😂!"
clean_text = remove_emoji(text)
print(clean_text)
输出:
你好,今天真不错!
方法 2:使用 emoji 第三方库
如果你安装了 emoji 模块,可以更精确地处理:
pip install emoji
import emoji
def remove_emoji(text):
return emoji.replace_emoji(text, replace='')
text = "你好🙂,今天真不错😂!"
print(remove_emoji(text))
同样输出:
你好,今天真不错!
方法 3:仅保留中英文和常见符号
如果你不仅想去掉 emoji,还想过滤掉所有非文字字符:
import re
def clean_text(text):
return re.sub(r'[^\u4e00-\u9fa5A-Za-z0-9,.!?,。!? ]+', '', text)
text = "你好🙂,今天真不错😂!"
print(clean_text(text))
你好,今天真不错!
更多推荐


所有评论(0)