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 深入理解yield
Sep 06 Python
在Python中marshal对象序列化的相关知识
Jul 01 Python
python 多线程实现检测服务器在线情况
Nov 25 Python
举例简单讲解Python中的数据存储模块shelve的用法
Mar 03 Python
Python读取文件内容的三种常用方式及效率比较
Oct 07 Python
python3.6根据m3u8下载mp4视频
Jun 17 Python
Python+pyplot绘制带文本标注的柱状图方法
Jul 08 Python
windows上安装python3教程以及环境变量配置详解
Jul 18 Python
Python 二叉树的层序建立与三种遍历实现详解
Jul 29 Python
python装饰器的特性原理详解
Dec 25 Python
基于Django OneToOneField和ForeignKey的区别详解
Mar 30 Python
浅谈Python数学建模之数据导入
Jun 23 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下过滤html代码的函数 提高程序安全性
2010/03/02 PHP
php中XMLHttpRequest(Ajax)不能设置自定义的Referer的解决方法
2011/11/26 PHP
PHP常用字符串操作函数实例总结(trim、nl2br、addcslashes、uudecode、md5等)
2016/01/09 PHP
php unlink()函数使用教程
2018/07/12 PHP
jQuery 位置插件
2008/12/25 Javascript
自制轻量级仿jQuery.boxy对话框插件代码
2010/10/26 Javascript
js multiple全选与取消全选实现代码
2012/12/04 Javascript
弹出最简单的模式化遮罩层的js代码
2013/12/04 Javascript
JSON无限折叠菜单编写实例
2013/12/16 Javascript
使用script的src实现跨域和类似ajax效果
2014/11/10 Javascript
javascript实现动态加载CSS
2015/01/26 Javascript
JS仿iGoogle自定义首页模块拖拽特效的方法
2015/02/13 Javascript
js实现刷新iframe的方法汇总
2015/04/27 Javascript
基于jquery实现省市区三级联动效果
2015/12/25 Javascript
jQuery EasyUI 入门必看
2016/06/03 Javascript
jQuery查看选中对象HTML代码的方法
2016/06/17 Javascript
JavaScript中 DOM操作方法小结
2017/04/25 Javascript
vue插件实现v-model功能
2018/09/10 Javascript
JavaScript常用8种数组去重代码实例
2020/09/09 Javascript
angular共享依赖的解决方案分享
2020/10/15 Javascript
原生微信小程序开发中 redux 的使用详解
2021/02/18 Javascript
[01:19:33]DOTA2-DPC中国联赛 正赛 iG vs VG BO3 第一场 2月2日
2021/03/11 DOTA
Python struct模块解析
2014/06/12 Python
举例讲解Python设计模式编程中对抽象工厂模式的运用
2016/03/02 Python
python使用Pycharm创建一个Django项目
2018/03/05 Python
Python3中关于cookie的创建与保存
2018/10/21 Python
Python txt文件加入字典并查询的方法
2019/01/15 Python
python使用mitmproxy抓取浏览器请求的方法
2019/07/02 Python
Python人工智能之路 jieba gensim 最好别分家之最简单的相似度实现
2019/08/13 Python
Pottery Barn阿联酋:购买家具、家居装饰及更多
2019/12/08 全球购物
JPA的特点
2014/10/25 面试题
对照检查剖析材料
2014/09/30 职场文书
财务人员廉洁自律心得体会
2016/01/13 职场文书
创业计划书之香辣虾火锅
2019/09/23 职场文书
解析redis hash应用场景和常用命令
2021/08/04 Redis
关于windows server 2012 DC 环境 重启后蓝屏代码:0xc00002e2的问题
2022/05/25 Servers