火眼猊 2023-07-26 16:23 采纳率: 16.7%
浏览 3

re.sub不能替换所有的非打印字符,ascii为28的并不能被替换掉

这段代码是我用来处理excel数据里面的非打印字符的,我的表格中会出现一个ascii码为28的文件分隔符,并且不会被替换掉,非常奇怪,不知道是否有人遇见过类似的情况。你们是如何解决的。
    # 正则表达式模式,用于匹配非打印字符(ASCII 控制字符)
        pattern = r'[\x00-\x1F\x7F]'

        # 遍历所有工作表
        for ws in all_worksheets:
            # 遍历当前工作表的所有单元格并清洁数据
            for row in ws.iter_rows():
                for cell in row:
                    if cell.value:
                        # 将单元格值转换为字符串
                        cleaned_value = re.sub(pattern, '*', str(cell.value))
                        cell.value = cleaned_value

  • 写回答

3条回答 默认 最新

  • 藏柏 2023-07-26 16:41
    关注

    pattern = r'[\x00-\x1F\x7F-\xFF]'
    你试试这个呢

    评论

报告相同问题?

问题事件

  • 创建了问题 7月26日

悬赏问题

  • ¥15 tiggerramdisk为什么会引导超时
  • ¥15 python随机森林对两个excel表格读取,shap报错
  • ¥15 基于STM32心率血氧监测(OLED显示)相关代码运行成功后烧录成功OLED显示屏不显示的原因是什么
  • ¥100 X轴为分离变量(因子变量),如何控制X轴每个分类变量的长度。
  • ¥30 求给定范围的全体素数p的(p-2)/p的连乘积值
  • ¥15 VFP如何使用阿里TTS实现文字转语音?
  • ¥100 需要跳转番茄畅听app的adb命令
  • ¥50 寻找一位有逆向游戏盾sdk 应用程序经验的技术
  • ¥15 请问有用MZmine处理 “Waters SYNAPT G2-Si QTOF质谱仪在MSE模式下采集的非靶向数据” 的分析教程吗
  • ¥15 adb push异常 adb: error: 1409-byte write failed: Invalid argument