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