7 搜索
7.1搜索常用命令
向前搜索: /
向后搜索: ?
常用命令:
1 / 向前重復(fù)搜索
2 ? 向后重復(fù)搜索
3 /regex 向前搜索指定的正則表達(dá)式
4 ?regex 向后搜索指定的正則表達(dá)式
5 n 重復(fù)上一條/或?命令,搜索方向相同
6 N 重復(fù)上一條/或?命令,搜索方向相反
附:
命令歷史記錄:用上下箭頭來查找用過的搜索
7.2查找字符串便捷方式
*命令 : 將光標(biāo)定位于字符串,按下*鍵,vi將會(huì)取當(dāng)前光標(biāo)所在的字符串并將它作用目標(biāo)字符串進(jìn)行搜索。
#命令: 與*相反。
%:搜索與當(dāng)前花括號(hào)、圓括號(hào)、方括號(hào)成對(duì)的符號(hào)。
7.3 查找整個(gè)字符串
方法:
使用\< \>進(jìn)行匹配。
例子:/\
8 文本改動(dòng)
8.1替換之vi命令
r:精確替換一個(gè)字符(不進(jìn)入輸入模式)。
R:替換多個(gè)字符(以覆蓋方式替換)。(先將光標(biāo)移動(dòng)到希望開始替換的位置,然后輸入R。切換到輸入模式,隨后鍵入的每個(gè)字符都將替換當(dāng)前行上的一個(gè)字符。)
s:允許使用多個(gè)字符替換一個(gè)單個(gè)的字符(以插入方式替換)。
C:允許替換從當(dāng)前光標(biāo)位置到本行末尾的所有字符。
S 或 cc:以插入方式替換當(dāng)前整行。
cmove:以插入方式從當(dāng)前光標(biāo)處替換到move所給出的位置處。
8.2替換之ex命令_常用方法
ex命令:
語法::s/pattern/replace/ 其中,pattern是替換的模式,replace是替換的文本。
使用方法總結(jié):
1 :s/pattern/replace/ 替換當(dāng)前行
2 s/pattern/replace/g 替換當(dāng)前行所有
3 :lines/pattern/raplace/ 替換指定行
4 :line,lines/pattern/replace/ 替換指定范圍內(nèi)的行
5 :%s/pattern/replace/ 替換所有行
6 :.,$s/pattern/replace/g 從當(dāng)前行末尾至編輯緩沖區(qū)的末尾進(jìn)行相同的替換
7 :line,.s/pattern/replace/g 從編輯緩沖區(qū)的指定位置到當(dāng)前行進(jìn)行相同的替換
說明 :
1 所有的ex命令都以:開頭。
2 :s只替換當(dāng)前行上該模式的第一個(gè)匹配項(xiàng)。
3 為了替換所有匹配項(xiàng),需在該命令的末尾鍵入字母g。例如::s/UNIX/linux/g
4 替換前進(jìn)行確認(rèn),可在命令末尾添加c。例如::s/UNIX/linux/cg
5 .點(diǎn)號(hào)代表當(dāng)前行。$代表緩沖區(qū)最后一行。%代表編輯緩沖區(qū)內(nèi)所有的行。
8.3 交換字符
交換兩個(gè)字符的位置: xp
交換兩行的位置:ddp
調(diào)換兩個(gè)單詞(光標(biāo)開始處于第一個(gè)單詞的左邊):deep