xujidong0 2009-08-14
使用vim替换^开头的字符。$代表的时候最后的字符。
那么正常情况下,
可以使用^$来代表你的空行。
也可以使用^\s*$来代表你有空白符的一些空行。
替换的时候如果想删除所有的空行,仅仅使用:%s/^$//g来作替换是不能够替换的。
因为没有把回车符替换掉,这样你可以使用:%s/^$\n//g来替换,有空白符的情况下,可以使用
:%s/^.*$\n//g来替换。
但是还有列外的情况。
今天我正好就遇到了类似情况。文件开头加入了一个全角空格符。
本来以为是空行,使用空行替换不行,后来使用空行加空白字符的替换方式依然不行。
后来使用了:setlist查看特殊字符。同时使用/^进行查询,发现确实是有字符,最后想想感觉可能是全角,使用:%s/^ $\n//进行替换最终匹配成功。
希望你遇到类似问题也能有所帮助。