巧用EditPlus 正则表达式删除文档多余空行

所属分类: 软件教程 / 编程开发 阅读数: 1525
收藏 0 赞 0 分享

从网上收集的文章大多有大量多余的空行,占据了许多篇幅,如果需要打印就非常浪费纸张。想要删除这些空行,可是这些空行要么不包含任何字符,要么包含了许多空格、制表符(Tab)。如果文章比较长,那么手工删除空行就成为一件颇费精力的事情。难道就没有别的办法?当然有!

我们可以借助文本编辑器软件EditPlus、UltraEdit实现。EditPlus、UltraEdit是常见的共享软件,几乎所有软件下载网站都提供下载。由于EditPlus的操作更容易上手,但UltraEdit更为常用,所以本文先介绍在EditPlus中的操作,再介绍UltraEdit。

一、在EditPlus中删除空行

启动EditPlus,打开待处理的文件。需要注意,必须是纯文本文件,如果是Word文档,需要先粘贴到纯文本文件中。然后,步骤如下:

1.选择“搜索”菜单的“替换”命令,出现如图所示的文本替换对话框。选中“正则表达式”复选框,表明我们要在查找、替换中使用正则表达式。然后,选中“全部替换范围”中的“当前文件”,表明对当前文件操作。(提示:可以同时打开多个文件进行操作,只要选中“所有打开的文件”)。

2.单击“查找内容”组合框右侧的按钮 ,出现下拉菜单,如下图所示。菜单命令中,本文用得着的命令依次是:制表符、换行、范围内的字符、行首、0或多次匹配。

下面的操作添加正则表达式,该表达式代表待查找的空行。(技巧提示:空行仅包括空格符、制表符、回车符,且必须以这三个符号之一作为一行的开头,并且以回车符结尾,查找空行的关键是构造代表空行的正则表达式)。

(1)选择“行首”,则查找内容组合框中出现字符“^”,表示待查找的字符串必须出现在文本中一行的行首,才符合条件。

(2)选择“范围内的字符”,“^”后增加一对括号“[]”,当前插入点在括号中。括号在正则表达式中表示,文本中的字符匹配括号中任意一个字符即符合查找条件。

(3)按一下空格键,添加空格符。空格符是空行的一个组成成分。

(4)选择“制表符”,添加代表制表符的“\t”。

(5)移动光标,将当前插入点移到“]”之后,然后选择“0或多次匹配”,添加了星号字符“*”。星号表示,其前面的括号“[]”内的空格符或制表符,在一行中出现0个或多个。

(6)选择“换行”,插入“\n”,表示回车符。

至此,正则表达式构造成功(如下图)。

3.替换内容组合框保持空,表示删除查找到的内容。单击“替换”按钮逐个行删除空行,或单击“全部替换”按钮删除全部空行(注意:EditPlus和UltraEdit均存在全部替换不能一次性完全删除空行的问题,可能是程序BUG,需要多按几次按钮)。

对于熟悉EditPlus的朋友,可以直接在Find what中输入正则表达式^[ \t]*\n ,注意\t前有空格符。

注意:在自动换行的模式下是不行的,改为不自动换行就行了。

1)菜单:编辑 -> 选择 -> 列选择
2)先按下 Alt + C ,释放,然后移动鼠标或键盘上下左右键进行选择
 

二、在UltraEdit中删除空行

使用UltraEdit的原理一样,但是UltraEdit没有提供菜单方式,所以需要手工输入正则表达式,而且UltraEdit的正则表达式符号与EditPlus不同。

用UltraEdit打开文件后,选择Search菜单的Replace命令。在Replace对话框中,选中Regular Expression复选框,并在Find what中输入:%[ ^t]++^p,注意^t之前有空格。该表达式字符含义与EditPlus的相对应。然后,单击Start或Replace All按钮,进行替换删除空行。

2.单击“ 查找内容”组合框右侧的按钮 ,出现下拉菜单,如下图所示。菜单 命令中,本文用得着的命令依次是:制表符、换行、范围内的字符、行首、0或多次匹配。  

下面的操作添加正则表达式,该表达式代表待查找的空行。(技巧提示:空行仅包括 空格符、制表符、回车符,且必须以这三个符号之一作为一行的开头,并且以回车符结尾,查找空行的关键是构造代表空行的 正则表达式)。  

  (1)选择“行首”,则查找内容组合框中出现 字符“^”,表示待查找的字符串必须出现在文本中一行的行首,才符合 条件。  

  (2)选择“范围内的字符”,“^”后增加一对括号“[]”,当前 插入点在括号中。括号在正则表达式中表示,文本中的字符匹配括号中任意一个 字符即符合查找条件。  

  (3)按一下空格键,添加空格符。 空格符是空行的一个组成成分。  

  (4)选择“制表符”, 添加代表制表符的“\t”。  

  (5)移动光标,将当前插入点移到“]”之后,然后选择“0或多次匹配”,添加了星号字符“*”。星号表示,其前面的括号“[]”内的空格符或制表符,在一行中出现0个或多个。  

  (6)选择“换行”,插入“\n”,表示回车符。  

  至此,正则表达式构造成功。  

  3.替换内容组合框保持空,表示删除查找到的内容。单击“替换”按钮逐个行删除空行,或单击“全部替换”按钮删除全部空行(注意:EditPlus和UltraEdit均存在全部替换不能一次性完全删除空行的问题,可能是程序BUG,需要多按几次按钮)。  

  对于熟悉EditPlus的朋友,可以直接在Find what中输入正则表达式^[ \t]*\n ,注意\t前有空格符。
 

更多精彩内容其他人还在看

VisualStudio2015怎么设计一个注册信息的页面?

VisualStudio2015怎么设计一个注册信息的页面?vs2015中想要设计一个注册表信息的页面,该怎么制作填写信息的表格呢?下面我们就来看看详细的教程,需要的朋友可以参考下
收藏 0 赞 0 分享

Notepad怎么显示隐藏的字符?

Notepad怎么显示隐藏的字符?Notepad++中文件都有隐藏的字符,想要显示隐藏的字符,该怎么显示呢?下面我们就来看看详细的教程,需要的朋友可以参考下
收藏 0 赞 0 分享

VS2017怎么提交作业? VS提交作业的方法

VS2017怎么提交作业?VS2017中做编程开发的时候,想要进行作业提交,该怎么提交呢?下面我们就来看看VS提交作业的方法,需要的朋友可以参考下
收藏 0 赞 0 分享

VS2017怎么使用作业视图?

VS2017怎么使用作业视图?VS2017中想要使用作业视图,该怎么使用作业视图呢?下面我们就来看看详细的教程,需要的朋友可以参考下
收藏 0 赞 0 分享

VS2017怎么使用Web代码分析功能?

VS2017怎么使用Web代码分析功能?经常使用VS2017进行编程开发,这个软件有很多功能,今天我们就来给大家介绍Web代码分析的使用方法,需要的朋友可以参考下
收藏 0 赞 0 分享

VS2017怎么使用ADLS路径?

VS2017怎么使用ADLS路径?VS2017编程开发经常使用的软件,该怎么使用ADLS路径呢?下面我们就来看看详细的教程,需要的朋友可以参考下
收藏 0 赞 0 分享

vscode英文版怎么显示隐藏行号?

vs code英文版怎么显示隐藏行号?Visual Studio Code中编程开发的时候,想要隐藏行号,该怎么隐藏或者显示行号呢?下面我们就来看看详细的教程,需要的朋友可以参考下
收藏 0 赞 0 分享

vscode英文版怎么设置自动保存的时间?

vscode英文版怎么设置自动保存的时间?使用vscode软件的时候,为了防止意外早层的文件丢失损失,想要设置自动保存文件,下面我们就来看看详细的教程,需要的朋友可以参考下
收藏 0 赞 0 分享

Sublime怎么查看最近打开的文件?

Sublime怎么查看最近打开的文件?Sublime编程开发的时候,想要打开之前打开过的文件,该怎么操作呢?下面我们就来看看详细的教程,需要的朋友可以参考下
收藏 0 赞 0 分享

Authorware多媒体课件怎么插入背景音乐?

Authorware多媒体课件怎么插入背景音乐?Authorware制作的课件需要插入音乐,该怎么插入背景音乐呢?下面我们就来看看详细的教程,需要的朋友可以参考下
收藏 0 赞 0 分享
查看更多