Python 实现替换 文件 特殊字符

说明:仅供学习使用,请勿用于非法用途,若有侵权,请联系博主删除

作者:zhu6201976

博客:https://blog.csdn.net/zhu6201976

需求:替换删除以下csv文件中所有特殊字符 以便入库MySQL(非配置utf8mb4编码)

"""
匹配替换 文件中 emoji 字符
"""

import re
import csv

compile_emoji = re.compile('['
                           '\U0001F300-\U0001F5FF'
                           '\U0001F900-\U0001F9FF'
                           '\U0001F600-\U0001F64F'
                           '\U0001F680-\U0001F6FF'
                           '\u2600-\u26FF'
                           '\u2700-\u27BF'
                           '\u24C2'
                           '\U0001F1E6-\U0001F1FF'
                           '\U0001F170-\U0001F171'
                           '\U0001F17E-\U0001F17F'
                           '\U0001F18E'
                           '\U0001F191-\U0001F19A'

                           # '\u0023'
                           # '\u002A'
                           # '\u0030-\u0039'

                           '\u2194-\u2199'
                           '\u21A9-\u21AA'
                           '\u2B05-\u2B07'
                           '\u2B1B'
                           '\u2B1C'
                           '\u2B50'
                           '\u2B55'
                           '\u2934-\u2935'
                           '\u3030'
                           '\u303D'
                           '\u3297'
                           '\u3299'
                           '\U0001F201-\U0001F202'
                           '\U0001F21A'
                           '\U0001F22F'
                           '\U0001F232-\U0001F23A'
                           '\U0001F250-\U0001F251'
                           '\u203C'
                           '\u2049'
                           '\u25AA'
                           '\u25AB'
                           '\u25B6'
                           '\u25C0'
                           '\u25FB-\u25FE'
                           '\u00A9'
                           '\u00AE'
                           '\u2122'
                           '\u2139'
                           '\U0001F004'
                           '\U0001F0CF'
                           '\u231A'
                           '\u231B'
                           '\u2328'
                           '\u23CF'
                           '\u23E9-\u23F3'
                           '\u23F8-\u23FA'
                           ']',
                           re.UNICODE)


def go():
    file_path = r'test.csv'
    file = open(file_path, 'r', encoding='utf-8')
    reader = csv.reader(file)
    next(reader)

    for row in reader:
        value = row[1]
        print(value, len(value), '\n')
        ret = compile_emoji.sub('', value)
        print(ret, len(ret))


if __name__ == '__main__':
    go()

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值