1200字范文,内容丰富有趣,写作的好帮手!
1200字范文 > python2 去除 字符串中emoji 符号 去除所有4字节utf8字符

python2 去除 字符串中emoji 符号 去除所有4字节utf8字符

时间:2020-12-13 21:19:59

相关推荐

python2 去除 字符串中emoji 符号 去除所有4字节utf8字符

对咱们天朝程序员来说,最常用的编码方式就是UTF-8了。大家在创建数据库的时候,总是条件反射选择UTF-8编码。

最近我遇到一个emoji 符号不能写入数据库得问题。通过查询资料得知,emoji 符号占据4个字符长度,而MySQL的utf-8编码只能写入最多3个字节的字符。想要写入emoji 符号,需要将数据库的编码方式改为 utf8mb4 。

然而,我这张表是一张比较老的表,其中存了很多的数据。修改他的结构怕会引起其他问题。所以只能想别的办法。

在我这里这个数据去除emoji 符号也能符合系统的要求,于是我开始想办法去除emoji 符号。开始我想取得找到emoji的编码范围,把这个范围内的字符都干掉。后来我发现emoji的分布范围比较分散,我没有找到能去除所有emoji符号的范例。

我又想到一个办法,把所有四字节utf8字符干掉不就行了嘛。以下是代码

try:text = unicode(text,"utf-8")except TypeError as e:passtry:highpoints = pile(u'[\U00010000-\U0010ffff]')except re.error:highpoints = pile(u'[\uD800-\uDBFF][\uDC00-\uDFFF]')return highpoints.sub(u'',text)

如果有帮到您,打个赏呗

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。