遇到一个比较大的文本文件需要去除空行,首先想到的自然是正则表达式。偷懒去网上找了几个删除空行的正则表达式,填到EditPlus里居然都不能用...而且大多数的正则表达式都用到了"\r",也就是回车符,关于"\n"和"\r"的区别我以后再写,今天只是为了记录一个正则表达式。
^[ \t]*\n
解释一下:
1、^表示一行的开头。空行嘛,肯定在一行的开头就是空的...
2、[ \t],"\t"前面还有一个空格。[]表示范围中的字符,里面写入空格和制表符(tab),因为空行可能是由空格和制表符构成。
3、*表示0次或任意次。也就是说这个空行可以没有空格或制表符,也可以有任意个前面[]里的字符。
4、\n就是换行符了。
这样在EditPlus里选择替换,然后勾选正则表达式,输入正则表达式,全部替换即可。不过EditPlus有个小bug,有时候不能一次替换完全,要多按几次"全部替换"才行...
转自 http://www.slyar.com/blog/editplus-regexp-blankline.html