【发布时间】:2016-10-06 17:21:22
【问题描述】:
如何替换 UTF8 MySQL DB 无法处理的字符,例如表情符号?????
关键是只删除那些无法处理的字符。我从这个答案removing emojis from a string in Python 中得到了这段代码,但它删除的太多了。 (编辑:这是我从remove unicode emoji using re in python 获得以下代码的页面)
myre = re.compile(u'('
u'\ud83c[\udf00-\udfff]|'
u'\ud83d[\udc00-\ude4f\ude80-\udeff]|'
u'[\u2600-\u26FF\u2700-\u27BF])+',
re.UNICODE)
my_text= myre.sub(r'EMOJI', my_text)
例如,这个心形符号♥可以保存到数据库中,但被上面的正则表达式捕获。
【问题讨论】:
-
如果您不知道,mysql 可以使用 utf8mb4 处理表情符号。
-
好的,谢谢!我肯定想在某个时候更改它,但现在不能在重新启动 MySQL 数据库所需的几个小时内关闭该站点。
-
该代码不在您链接到的页面上:是您将其转换为匹配 16 位而不是 32 位宽字符吗?
-
啊!进行了编辑。它在另一页上stackoverflow.com/questions/26568722/…
标签: python mysql regex utf-8 emoji