1,删除空行
命令行使用:g/^\s*$/d
:g全局,
^代表行的开始
\s代表空白字符,*代表重复0到n个前面的字符
&代表行的结束
d代表删除
替换:
替换可以使用两种模式,一般我们使用基本的替换模式:
:s/源字符串/目的字符串/[option]'
还有一种是上下文相关替换:
:g/pattern/s/old/new/g 将会把包含pattern的行中,把所有old替换为new
第一个g表示是在文件的所有行上执行的命令,模式pattern识别要发生替换的行。在那些包含模式pattern的行上,ex将把old替换(s)为new。最后的g表示在该行上进行全部替换
举例:
1,替换指定字符串的行
比如替换一个文本中的abc
则执行
:%s/abc/xyz/g 等价于 :g/abc/s//xyz/g 又等价于 :g/abc/s/abc/xyz/g
其中:
g(global全局),s(switch替换)
'%' :表示整个文件,同'1,$' 另外‘. ,$’ :从当前行到文件尾
最后的/g代表匹配行的替换
2,替换行首行尾或者说在行首行尾添加指定字符
替换行首:s/^/xxx/g -- 在行首添加上自己想要的内容
替换行尾:s/$/xxx/g
命令行使用:g/^\s*$/d
:g全局,
^代表行的开始
\s代表空白字符,*代表重复0到n个前面的字符
&代表行的结束
d代表删除
替换:
替换可以使用两种模式,一般我们使用基本的替换模式:
:s/源字符串/目的字符串/[option]'
还有一种是上下文相关替换:
:g/pattern/s/old/new/g 将会把包含pattern的行中,把所有old替换为new
第一个g表示是在文件的所有行上执行的命令,模式pattern识别要发生替换的行。在那些包含模式pattern的行上,ex将把old替换(s)为new。最后的g表示在该行上进行全部替换
举例:
1,替换指定字符串的行
比如替换一个文本中的abc
则执行
:%s/abc/xyz/g 等价于 :g/abc/s//xyz/g 又等价于 :g/abc/s/abc/xyz/g
其中:
g(global全局),s(switch替换)
'%' :表示整个文件,同'1,$' 另外‘. ,$’ :从当前行到文件尾
最后的/g代表匹配行的替换
2,替换行首行尾或者说在行首行尾添加指定字符
替换行首:s/^/xxx/g -- 在行首添加上自己想要的内容
替换行尾:s/$/xxx/g