python使用正则表达式去除中文文本多余空格,保留英文之间空格方法详解


Posted in Python onFebruary 11, 2020

在pdf转为文本的时候,经常会多出空格,影响数据观感,因此需要去掉文本中多余的空格,而文本中的英文之间的正常空格需要保留,输入输出如下:

input:我今天 赚了 10 个亿,老百姓very happy。

output:我今天赚了10个亿,老百姓very happy。

代码

def clean_space(text):
  """"
  处理多余的空格
  """
  match_regex = re.compile(u'[\u4e00-\u9fa5。\.,,::《》、\(\)()]{1} +(?<![a-zA-Z])|\d+ +| +\d+|[a-z A-Z]+')
  should_replace_list = match_regex.findall(text)
  order_replace_list = sorted(should_replace_list,key=lambda i:len(i),reverse=True)
  for i in order_replace_list:
    if i == u' ':
      continue
    new_i = i.strip()
    text = text.replace(i,new_i)
  return text

python去除英文单词之间多余的空格

re.sub(" +", " ", s)

import re 

s = "     info has been found (+/- 100 pages, and 4.5 mb of .pdf files) now i have to wait untill our team leader has processed it and learns html.     "
re.sub(" +", " ", s)

' '.join(s.split())

s = "     info has been found (+/- 100 pages, and 4.5 mb of .pdf files) now i have to wait untill our team leader has processed it and learns html.     "

s = ' '.join(s.split())
s

更多关于python使用正则表达式去除多余空格方法请查看下面的相关链接

Python 相关文章推荐
python单链表实现代码实例
Nov 21 Python
Django框架中方法的访问和查找
Jul 15 Python
对python中的os.getpid()和os.fork()函数详解
Aug 08 Python
Python OpenCV实现鼠标画框效果
Aug 19 Python
Python根据服务获取端口号的方法
Sep 25 Python
Pycharm创建项目时如何自动添加头部信息
Nov 14 Python
用python3读取python2的pickle数据方式
Dec 25 Python
python从内存地址上加载python对象过程详解
Jan 08 Python
python 绘制正态曲线的示例
Sep 24 Python
分析Python感知线程状态的解决方案之Event与信号量
Jun 16 Python
python playwright 自动等待和断言详解
Nov 27 Python
python读取并查看npz/npy文件数据以及数据显示方法
Apr 14 Python
python 函数中的参数类型
Feb 11 #Python
python正则过滤字母、中文、数字及特殊字符方法详解
Feb 11 #Python
python3正则模块re的使用方法详解
Feb 11 #Python
Python版中国省市经纬度
Feb 11 #Python
Python终端输出彩色字符方法详解
Feb 11 #Python
Python连接Oracle之环境配置、实例代码及报错解决方法详解
Feb 11 #Python
利用python中集合的唯一性实现去重
Feb 11 #Python
You might like
php模拟asp中的XmlHttpRequest实现http请求的代码
2011/03/24 PHP
zend api扩展的php对象的autoload工具
2011/04/18 PHP
深入php常用函数的使用汇总
2013/06/08 PHP
学习php设计模式 php实现备忘录模式(Memento)
2015/12/09 PHP
关于PHP 如何用 curl 读取 HTTP chunked 数据
2016/02/26 PHP
tp5(thinkPHP5框架)时间查询操作实例分析
2019/05/29 PHP
Javascript绝句欣赏 一些经典的js代码
2012/02/22 Javascript
基于jquery的图片轮播 tab切换组件
2012/07/19 Javascript
一个JS函数搞定网页标题(title)闪动效果
2014/05/13 Javascript
javascript内置对象操作详解
2015/02/04 Javascript
谈谈jQuery Ajax用法详解
2015/11/27 Javascript
js实现上传文件添加和删除文件选择框
2016/10/24 Javascript
angularjs中ng-attr的用法详解
2016/12/31 Javascript
vue.js指令和组件详细介绍及实例
2017/04/06 Javascript
JavaScript循环_动力节点Java学院整理
2017/06/28 Javascript
详解用vue编写弹出框组件
2017/07/04 Javascript
vue.js组件之间传递数据的方法
2017/07/10 Javascript
基于LayUI实现前端分页功能的方法
2017/07/22 Javascript
Vue开发环境中修改端口号的实现方法
2019/08/15 Javascript
layui form表单提交后实现自动刷新
2019/10/25 Javascript
Vue项目中使用jsonp抓取跨域数据的方法
2019/11/10 Javascript
[03:02]安得倚天剑,跨海斩长鲸——中国军团出征DOTA2国际邀请赛
2018/08/14 DOTA
python self,cls,decorator的理解
2009/07/13 Python
Python中的面向对象编程详解(上)
2015/04/13 Python
Django中模版的子目录与include标签的使用方法
2015/07/16 Python
Python编程中装饰器的使用示例解析
2016/06/20 Python
Django使用Celery异步任务队列的使用
2018/03/13 Python
numpy中实现二维数组按照某列、某行排序的方法
2018/04/04 Python
DJango的创建和使用详解(默认数据库sqlite3)
2019/11/18 Python
Python numpy大矩阵运算内存不足如何解决
2020/11/19 Python
html5拖曳操作 HTML5实现网页元素的拖放操作
2013/01/02 HTML / CSS
Notino芬兰:购买香水和化妆品
2019/04/15 全球购物
公司清洁工岗位职责
2013/12/14 职场文书
协商一致解除劳动合同协议书
2014/09/14 职场文书
浅谈JavaScript浅拷贝和深拷贝
2021/11/07 Javascript
python实现会员管理系统
2022/03/18 Python