如何处理超级大的文本,将空行替换为逗号或者其他内容?

作者:FancyPig | 发布时间: | 更新时间:

场景

将txt文本中的换行符号转换为逗号,有什么方法?如果文本特别大呢,几千万行、几亿行呢?

解决方案

以下解决方案能否成功与你的文本大小有关

word文档

最简单的我们可以通过word文档中的替换功能

查找内容为^p,替换为,即可

这里可以看到已经成功了

Emeditor

data-postsbox="{"id":301,"title":"EmEditor v18.0.5 轻量级文本编辑器","author":"FancyPig","author_id":1,"cover_image":"","cover_video":"","views":1477,"comment_count":11,"category":"software","is_forum_post":false}">{"id":301,"title":"EmEditor v18.0.5 轻量级文本编辑器","author":"FancyPig","author_id":1,"cover_image":"","cover_video":"","views":1477,"comment_count":11,"category":"software","is_forum_post":false}

点击搜索中的替换

查找\r\n,替换为,即可

可以看到替换完成

notepad++

处理大文本瓶颈

当然,上面只是处理少量文本的方法,如果文本特别大呢?我们看看刚才的那些软件

这里可以看到word、notepad++都凉了,直接卡到未响应了。

然而,Emeditor,还算坚挺。

紧接着弹出提示,告诉我们不可撤销。

替换完准备保存

然后,脸就被打歪了

使用python处理超大文本

这时,我们就需要用代码来解决上述问题了。5行代码解决问题

fn=open('C:/users/66396/desktop/1.1.txt','r')#这里填原始txt文件
fn=fn.read()
fn=fn.replace('\n',',')#这里是将\n替换为, 即将空行替换为逗号
s=open('C:/users/66396/desktop/1.2.txt','a+')#这里填新生成的txt文件
s=s.write(fn)

运行秒完成

可以看到替换完的文本