"在vi中进行批量替换" 修訂間的差異
從 YTYZX有图有真相的百科
(e) (2 個標籤:手機版編輯,手機版網頁編輯) |
(e) (2 個標籤:手機版編輯,手機版網頁編輯) |
||
行 34: | 行 34: | ||
[[File:ViBatchR11.png]] | [[File:ViBatchR11.png]] | ||
− | + | e | |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
== 替换特定行到结尾行所有符合规则的字符 == | == 替换特定行到结尾行所有符合规则的字符 == |
於 2022年3月22日 (二) 06:30 的修訂
e
e
替換每行第一個符合規則的字符
6.以上为替换所有行的所有“t”为“T”,如需只替换每行的第一个“t”为“T”,则输入“:%s/t/T/”并按回车键确定。 备注:注意后面没有加g。
7.亦可输入“:g/t/s//T/”并按回车键确定,结果与上面相同。 备注:注意s后面是两个斜杠。
8.替换效果如下,每行的第一个小写t被替换为大写T。
e
替換光標所在行第一個符合規則的字符
11.将光标移动到第二行(即# System authorization information行)。
12.输入“:s/t/T/”并按回车键确定。
13.替换效果如下,只有第二行的第一个t被替换为T,其他均未替换。
e
替換特定行到結尾行所有符合規則的字符
16.输入“:6,$s/t/T/g”并按回车键确定。 备注:此处将第6行到结尾行的第一个“t”替换为“T”,实际使用中可根据需要自行修改开始行数。
17.替换效果如下。 备注:前5行的“t”没有替换为“T”。
替換包含/的字符
18.如需将“t”替换为“T/”则输入“:%s#t#T/#g”并按回车键确定。 备注:使用#替换/可避免将/识别为分隔符。
19.替换效果如下,所有“t”已经被替换为“T/”。
20.同理可输入“:%s#T/#t#g”将“T/”全局替换为“t”。
21.替换效果如下。