python过滤特殊字符
QQ群:397745473
python过滤特殊字符
前提背景:
通过接口获取到的数据,要存入数据库,由于数据库的编码问题,一些特殊字符出现错误,无法进入数据库
解决办法:
过滤掉这些特殊字符,包含emoji表情等各种特殊字符
方法一
1 2 3 4 5
| impoer re def filter_str(desstr,restr=''): #过滤除中英文及数字以外的其他字符 res = re.compile("[^\u4e00-\u9fa5^a-z^A-Z^0-9]") return res.sub(restr, desstr)
|
emoji表情库
emoji处理库,emoji官网:https://pypi.org/project/emoji/
1 2 3 4 5
| #安装 pip install emoji
# 清除命令 emoji.demojize(str)
|
1 2 3 4 5 6 7 8 9
| import re def filter_emoji(desstr,restr=''): #过滤表情 try: res= re.compile(u'[\U00010000-\U0010ffff]') except re.error: res = re.compile(u'[\uD800-\uDBFF][\uDC00-\uDFFF]') return res.sub(restr, desstr)
|
1 2 3 4 5
| # 打印所有字符 for i in range(0x0,0x10ffff): print(chr(i),end=" ") if i%16==15: print()
|
原贴:https://blog.csdn.net/weixin_43420032/article/details/90314224
QQ群:397745473