脚本之家,脚本语言编程技术及教程分享平台!
分类导航

Python|VBS|Ruby|Lua|perl|VBA|Golang|PowerShell|Erlang|autoit|Dos|bat|

服务器之家 - 脚本之家 - Python - python删除文本中行数标签的方法

python删除文本中行数标签的方法

2021-02-27 00:36白熊花田 Python

这篇文章主要为大家详细介绍了python删除文本中行数标签的方法,具有一定的参考价值,感兴趣的小伙伴们可以参考一下

问题描述:

我们在网上下载或者复制别人代码的时候经常会遇到下载的代码中包含行数标签的情况。如下图:

python删除文本中行数标签的方法

这些代码中包含着行数如1.,2.等,如果我们想直接运行或者copy代码需要自己手动的删除这些标签。既然学了python,我们写一段脚本来处理它吧。

思路分析:

首先,我们逐行的读取文本。

利用正则表达式,可以顺利地匹配出所有的这些标签以及后面跟随的“\t”,正则表达式为:“\d+.\t”。

接着我们将匹配的结果在这一行中删除它,使用string模块的replace方法,将匹配的结果用‘'代替。

最后,我们保存每次删除了行数标签的结果行,然后将这些行写入原文本。注意,以w的方式打开文本会删除原文本内容。

代码:

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
# -*- coding:utf-8 -*-
import re
import os
import sys
reload(sys)
sys.setdefaultencoding('utf-8')
 
ls = os.linesep
label_regex = r'\d+.\t'
content = []
for line in open('source.txt', 'r'):
  mm = re.search(label_regex, line)
  if mm:
    mm = mm.group()
    content.append(line.replace(mm, '').rstrip())
  else:
    break
f = open('source.txt', 'w')
f.writelines(['%s%s' % (x,ls) for x in content])

结果:

python删除文本中行数标签的方法

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持服务器之家。

原文链接:https://blog.csdn.net/whiterbear/article/details/44997767

延伸 · 阅读

精彩推荐