一行Python代码过滤标点符号等特殊字符


Posted in Python onAugust 12, 2019

很多时候我们需要过滤掉标点符号等特殊字符,网上虽然有一堆的方法,但是都没有找到一个非常满意的,有些过滤不了中文的标点符号,有些过滤不了英文的标点符号,有些过滤不全。

最后通过查看正则表达式文档,发现一个高效的办法,一行代码就能搞定:

def replace_all_blank(value):
  """
  去除value中的所有非字母内容,包括标点符号、空格、换行、下划线等
  :param value: 需要处理的内容
  :return: 返回处理后的内容
  """
  # \W 表示匹配非数字字母下划线
  result = re.sub('\W+', '', value).replace("_", '')
  print(result)
  return result

其中用到了 Python 的 re 模块, re 模块里面包含了所有的正则表达式的应用。代码里面有几个点:

\W

测试一下:

replace_all_blank("Powe, on;the 2333, 。哈哈 !!看看可以吗?一行代码就可以了!^_^")

输出结果:

Poweonthe2333哈哈看看可以吗一行代码就可以了

一行代码搞定!Perfect!

最后推荐大家官网 re 模块的正则表达式文档地址:

https://docs.python.org/zh-cn/3.6/library/re.html

知识点扩展:

python过滤中英文标点符号

import re
# 过滤不了\\ \ 中文()还有————
r1 = u'[a-zA-Z0-9'!"#$%&\'()*+,-./:;<=>?@,。?★、…【】《》?“”‘'![\\]^_`{|}~]+'#用户也可以在此进行自定义过滤字符
# 者中规则也过滤不完全
r2 = "[\s+\.\!\/_,$%^*(+\"\']+|[+——!,。?、~@#¥%……&*()]+"
# \\\可以过滤掉反向单杠和双杠,/可以过滤掉正向单杠和双杠,第一个中括号里放的是英文符号,第二个中括号里放的是中文符号,第二个中括号前不能少|,否则过滤不完全
r3 = "[.!//_,$&%^*()<>+\"'?@#-|:~{}]+|[——!\\\\,。=?、:“”‘'《》【】¥……()]+"
# 去掉括号和括号内的所有内容
r4 = "\\【.*?】+|\\《.*?》+|\\#.*?#+|[.!/_,$&%^*()<>+""'?@|:~{}#]+|[——!\\\,。=?、:“”‘'¥……()《》【】]"
text = "\崔芸,\\我爱=+你!【我//""们】~————结/婚'吧::!这.!!_#??()个‘'“”¥$主|意()不错......!"
print(re.sub(r1, , '', text))

总结

以上所述是小编给大家介绍的一行代码Python过滤标点符号等特殊字符,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!
如果你觉得本文对你有帮助,欢迎转载,烦请注明出处,谢谢!

Python 相关文章推荐
用Python写一个无界面的2048小游戏
May 24 Python
Python 专题四 文件基础知识
Mar 20 Python
Python数据分析之如何利用pandas查询数据示例代码
Sep 01 Python
对TensorFlow的assign赋值用法详解
Jul 30 Python
浅谈Python脚本开头及导包注释自动添加方法
Oct 27 Python
python字典一键多值实例代码分享
Jun 14 Python
python可视化爬虫界面之天气查询
Jul 03 Python
python查找重复图片并删除(图片去重)
Jul 16 Python
用Python在Excel里画出蒙娜丽莎的方法示例
Apr 28 Python
用基于python的appium爬取b站直播消费记录
Apr 17 Python
python使用pywinauto驱动微信客户端实现公众号爬虫
May 19 Python
python_tkinter事件类型详情
Mar 20 Python
一篇文章弄懂Python中的可迭代对象、迭代器和生成器
Aug 12 #Python
Django认证系统实现的web页面实现代码
Aug 12 #Python
django 自定义过滤器(filter)处理较为复杂的变量方法
Aug 12 #Python
django-filter和普通查询的例子
Aug 12 #Python
利用python实现汉字转拼音的2种方法
Aug 12 #Python
python面向对象 反射原理解析
Aug 12 #Python
Python中正反斜杠(‘/’和‘\’)的意义与用法
Aug 12 #Python
You might like
php实现的发送带附件邮件类实例
2014/09/22 PHP
php生成过去100年下拉列表的方法
2015/07/20 PHP
自制PHP框架之路由与控制器
2017/05/07 PHP
用JavaScript页面不刷新时全选择,全删除(GridView)
2009/04/14 Javascript
JS构建页面的DOM节点结构的实现代码
2011/12/09 Javascript
JQuery入门——事件切换之hover()方法应用介绍
2013/02/05 Javascript
禁用Tab键JS代码兼容Firefox和IE
2014/04/18 Javascript
javascript 中__proto__和prototype详解
2014/11/25 Javascript
使用node.js中的Buffer类处理二进制数据的方法
2016/11/26 Javascript
vue2.0使用swiper组件实现轮播效果
2017/11/27 Javascript
详解react-router 4.0 下服务器如何配合BrowserRouter
2017/12/29 Javascript
vue2.0学习之axios的封装与vuex介绍
2018/05/28 Javascript
移动端H5页面返回并刷新页面(BFcache)的方法
2018/11/06 Javascript
electron + vue项目实现打印小票功能及实现代码
2018/11/25 Javascript
浅谈redux, koa, express 中间件实现对比解析
2019/05/23 Javascript
微信小程序自定义navigationBar顶部导航栏适配所有机型(附完整案例)
2020/04/26 Javascript
js+css实现全屏侧边栏
2020/06/16 Javascript
angular中的post请求处理示例详解
2020/06/30 Javascript
[01:11:48]Fnatic vs IG 2018国际邀请赛小组赛BO2 第二场 8.17
2018/08/18 DOTA
浅谈python为什么不需要三目运算符和switch
2016/06/17 Python
人机交互程序 python实现人机对话
2017/11/14 Python
Tensorflow使用tfrecord输入数据格式
2018/06/19 Python
python 实现求解字符串集的最长公共前缀方法
2018/07/20 Python
python交互模式下输入换行/输入多行命令的方法
2019/07/02 Python
python利用tkinter实现屏保
2019/07/30 Python
PyTorch预训练的实现
2019/09/18 Python
Python socket模块方法实现详解
2019/11/05 Python
python判断无向图环是否存在的示例
2019/11/22 Python
python爬虫利用代理池更换IP的方法步骤
2021/02/21 Python
介绍一下write命令
2014/08/10 面试题
Java中会存在内存泄漏吗,请简单描述
2016/12/22 面试题
县委常委班子专题民主生活会查摆问题及整改措施
2014/09/27 职场文书
教师群众路线教育实践活动学习笔记
2014/11/05 职场文书
指导老师鉴定意见
2015/06/05 职场文书
教师师德承诺书2016
2016/03/25 职场文书
从零开始在Centos7上部署SpringBoot项目
2022/04/07 Servers