【Python正则-驯化】最全面干净的通过python将文本中的异常符号进行处理技巧

【Python正则-驯化】最全面干净的通过python将文本中的异常符号进行处理技巧

本次修炼方法请往下查看

🌈 欢迎莅临 我的个人主页 👈这里是我工作、学习、实践 IT领域、真诚分享 踩坑集合,智慧小天地!

🎇 免费获取相关内容文档关注: 微信公众号,发送 pandas 即可获取

🎇 相关内容视频 讲解 B站

🎓 博主简介 :AI算法驯化师,混迹多个大厂搜索、推荐、广告、数据分析、数据挖掘岗位 个人申请专利40+,熟练掌握机器、深度学习等各类应用算法原理和项目实战经验

🔧 技术专长 : 在机器学习、搜索、广告、推荐、CV、NLP、多模态、数据分析 等算法相关领域有丰富的项目实战经验。已累计为求职、科研、学习等需求提供近千次 有偿|无偿定制化服务,助力多位小伙伴在学习、求职、工作上少走弯路、提高效率,近一年好评率100%

📝 博客风采 : 积极分享关于机器学习、深度学习、数据分析、NLP、PyTorch、Python、Linux、工作、项目总结相关的实用内容。

🌵文章目录🌵

    • [🎯 1. 基本介绍](#🎯 1. 基本介绍)
    • [🎯 2、解决方法](#🎯 2、解决方法)
      • [2.1 通过穷举的解决](#2.1 通过穷举的解决)
      • [2.1 通过unicode的解决](#2.1 通过unicode的解决)
    • [🎯 3. 注意事项](#🎯 3. 注意事项)
    • [🎯 4. 总结](#🎯 4. 总结)

下滑查看解决方法

🎯 1. 基本介绍

在处理各类数据时,有时候数据的key为文本数据,这时经常会有相关的异常符号的出现,如果我们通过穷举的方法对数据进行过滤会出现一定泄露的问题,具体的常用的数据如下所示:

python 复制代码
string = "123我123456abcdefgABCVDFF?/ ,。,.:;:''';'''[]{}()()《》"

🎯 2、解决方法

2.1 通过穷举的解决

我们可以通过如下的正则表达式对其进行解决,具体的模版如下所示:

python 复制代码
`[a-zA-Z0-9'!"#$%&\'()*+,-./:;<=>?@,。?★、...【】《》?± ""''![\\]^_`{|}~]`

通过上面的模版通过python对其进行修改,具体的代码如下所示:

python 复制代码
import re 

string = "123我123456abcdefgABCVDFF?/ ,。,.:;:''';'''[]{}()()《》"

sub_str = re.sub(u'([a-zA-Z0-9'!"#$%&\'()*+,-./:;<=>?@,。?★、...【】《》?± ""''![\\]^_`{|}~])',"",string)
sub_str

# 输出结果
'我()'

通过上面的方法,真实的环境中异常符号的数据特别的多,我们根本没法完全全部列出来,因此,这种办法很难处理好数据

2.1 通过unicode的解决

可以根据每个字符在unicode中编码的值通过unicode编码对其进行转换,具体的代码如下所示:

python 复制代码
import re 
sub_str = re.sub(u"([^\u4e00-\u9fa5\u0030-\u0039\u0041-\u005a\u0061-\u007a])","",string)
print(sub_str)
123我123456abcdefgABCVDFF

上述代码的核心就是通过对中文、数字、字母的unicode编码范围进行判断,如果超过范围内的字符则进行过滤处理。

🎯 3. 注意事项

  • 确保使用原始字符串(在字符串前加r)来定义正则表达式,以避免转义字符的问题。
  • 正则表达式的性能可能受到模式复杂度和文本长度的影响。
  • 在使用正则表达式之前,了解其语法和规则是非常重要的。

🎯 4. 总结

Python的re模块为处理文本提供了强大的正则表达式功能。通过本博客的代码示例,我们学习了如何使用正则表达式进行搜索、查找、替换和分割操作。希望这篇博客能够帮助你更好地利用正则表达式来清洗和处理文本数据。

相关推荐
花生了什么树~.12 分钟前
python基础知识(四)--if语句,for\while循环
python
她似晚风般温柔78915 分钟前
Uniapp + Vue3 + Vite +Uview + Pinia 分商家实现购物车功能(最新附源码保姆级)
开发语言·javascript·uni-app
咩咩大主教16 分钟前
C++基于select和epoll的TCP服务器
linux·服务器·c语言·开发语言·c++·tcp/ip·io多路复用
FuLLovers1 小时前
2024-09-13 冯诺依曼体系结构 OS管理 进程
linux·开发语言
IT毕设梦工厂1 小时前
计算机毕业设计选题推荐-在线拍卖系统-Java/Python项目实战
java·spring boot·python·django·毕业设计·源码·课程设计
everyStudy2 小时前
JS中判断字符串中是否包含指定字符
开发语言·前端·javascript
luthane2 小时前
python 实现average mean平均数算法
开发语言·python·算法
码农研究僧2 小时前
Flask 实现用户登录功能的完整示例:前端与后端整合(附Demo)
python·flask·用户登录
Ylucius2 小时前
动态语言? 静态语言? ------区别何在?java,js,c,c++,python分给是静态or动态语言?
java·c语言·javascript·c++·python·学习
凡人的AI工具箱2 小时前
AI教你学Python 第11天 : 局部变量与全局变量
开发语言·人工智能·后端·python