命令模式下: Vi的替换命令: :ranges/pat1/pat2/[g][i] 其中 : 这是Vi的命令执行界面。 range 是命令执行范围的指定,可以使用百分号(%)表示所有行,使用点(.)表示当前行,使用美元符号($)表示最后一行。你还可以使用行号,例如10,20表示第10到20行,.,$表示当前行到最后一行,.+2,$-5表示当前行后两行直到全文的倒数第五行,等等。 s 表示其后是一个替换命令。 pat1 这是要查找的一个正则表达式 pat2 这是希望把匹配串变成的模式的正则表达式 g 可选标志,带这个标志表示替换将针对行中每个匹配的串进行,否则则只替换行中第一个匹配串 i可选标志,带这个标志表示忽略大小写匹配参考:正则表达式之道以前一直不知道怎么替换。
在整个文件的各行或某几行的行首或行尾加一些字符串。
---- vi file
---- :3,$s/^/some string / 在文件的第一行至最后一行的行首插入“some string”。
---- :%s/$/some string/g 在整个文件每一行的行尾添加“some string”。
---- :%s/string1/string2/g 在整个文件中替换“string1”成“string2”。
---- :3,7s/string1/string2/ 仅替换文件中的第3行到第7行中的“string1”成“string2”。
---- 注意: 其中s为substitute,%表示所有行,g表示global。
VIM中能否替换光标选中的字符串?如下:
大写的V,移动j,k上下选中后,按下冒号,此时vim的命令行显示::'<,'>,后输入s,再输入斜杠,斜杠输入你要替换的单词后,再一个斜杠,输入你现在新的替换内容,再输入一个斜杠后输入g,即可替换可视化后选中里面内容,不替换整个文本。如下:
在vi里把其中一行双引号替换为单引号:
$date = array("<"=>"<",">"=>">","\""=>"'",""=>"",);
替换为:
$date = array('<'=>'<','>'=>'>','\''=>''',''=>'',);
方法:
一、选中一行:Shift+V ,或移动到行首:0 ,;ctrl+v (块选开始),$ (shift+4:到行尾),一样能选一行。
二、替换: 冒号,shift+; (;上面是冒号), 输入:s 斜杠 被替换的东西 斜杠 替换为的东西 斜杠 g :
:'<,'>s/"/'/g
'<,'>是按冒号vi自动生成的。
摘自:http://ar.newsmth.net/thread-5b1a985c3fcc8a-1.html
在整个文件的各行或某几行的行首或行尾加一些字符串。
---- vi file
---- :3,$s/^/some string / 在文件的第一行至最后一行的行首插入“some string”。
---- :%s/$/some string/g 在整个文件每一行的行尾添加“some string”。
---- :%s/string1/string2/g 在整个文件中替换“string1”成“string2”。
---- :3,7s/string1/string2/ 仅替换文件中的第3行到第7行中的“string1”成“string2”。
---- 注意: 其中s为substitute,%表示所有行,g表示global。
VIM中能否替换光标选中的字符串?如下:
大写的V,移动j,k上下选中后,按下冒号,此时vim的命令行显示::'<,'>,后输入s,再输入斜杠,斜杠输入你要替换的单词后,再一个斜杠,输入你现在新的替换内容,再输入一个斜杠后输入g,即可替换可视化后选中里面内容,不替换整个文本。如下:
在vi里把其中一行双引号替换为单引号:
$date = array("<"=>"<",">"=>">","\""=>"'",""=>"",);
替换为:
$date = array('<'=>'<','>'=>'>','\''=>''',''=>'',);
方法:
一、选中一行:Shift+V ,或移动到行首:0 ,;ctrl+v (块选开始),$ (shift+4:到行尾),一样能选一行。
二、替换: 冒号,shift+; (;上面是冒号), 输入:s 斜杠 被替换的东西 斜杠 替换为的东西 斜杠 g :
:'<,'>s/"/'/g
'<,'>是按冒号vi自动生成的。
摘自:http://ar.newsmth.net/thread-5b1a985c3fcc8a-1.html
作者:rlsruss@向东博客 专注WEB应用 构架之美 --- 构架之美,在于尽态极妍 | 应用之美,在于药到病除
地址:https://jackxiang.com/post/188/
版权所有。转载时必须以链接形式注明作者和原始出处及本声明!
最后编辑: jackxiang 编辑于2014-9-22 10:48
评论列表