in PC

UltraEdit删除多余的空行

今天在公司上班的时候,做网站编辑的同事需要删除一个MP3歌词的LRC文件里面的那些时间标记,我在UltraEdit里面用正则表达式帮同事处理掉了,这样就会省掉很多事情了。

然后同样的事情,需要处理掉文章中多余的空行,还是用正则表达式。开始简单想用 unix的正则引擎, 替换  \r\n 为空字符串,但是这样执行的结果是不只是去掉了空行,还把所有的行都连在一起来,没有了所有的回车,显然是不行的。

然后求助于google,知道了用UltraEdit的正则引擎可以这样处理 替换 %[ ^t]++^p 为空字符串。这样确实是可行的。

但是其实刚才我第一反应想到的只要变通一下就可以了。后来仔细想了想,其实可以很简单的。

空行无非就是两个回车,那么我们替换两个回车符为一个回车符就可以了嘛。

于是替换 \r\n\r\n 为 \r\n 就可以了,要选择unix的正则引擎。

然后再仔细想想,其实还可以这样处理: 两个回车是 \r\n\r\n 嘛,那我们替换 \n\r 为空字符串就可以了,经过测试可以使用。

有的时候,只要多想想,就可以很方便的解决问题了。学好正则,在很多时候可以大大的提高工作效率啊。

    • @HDH.KX, 可以变通一下,把正则规则改成匹配两个或者多个\r\n 就可以了吧,正则不熟,现在没参考书在旁边,所以给不了具体的正则规则