vim 查找和替換命令 替換/n和\n


一、 字符串的查找
1. vim 中用 / 和 ? 來查找字符串,兩者的區別是:
/string 會高亮顯示光標后匹配的第一個字符串,回車后光標移到該字符串的第一個字母;
?string 會高亮顯示光標前匹配的第一個字符串,回車后光標移到該字符串的第一個字母。
在回車之后,按n鍵同方向轉到下一個匹配的字符串,按N鍵反方向轉到上一個匹配的字符串。
2. 用命令 :set ic 和 :set noic 來分別設置查找時不區分和區分大小寫。
如果查找特殊字符,如 ^、$、*、/ 和 .,需要在前面加 \ 來轉義。
二、字符串的替換
1. vim 中可用 :s 命令來替換字符串,具體如下:
:s/str1/str2/ 替換當前行第一個 str1 為 str2
:s/str1/str2/g 替換當前行中所有 str1 為 str2
:m,ns/str1/str2/ 替換第 n 行開始到最后一行中每一行的第一個 str1 為 str2
:m,ns/str1/str2/g 替換第 n 行開始到最后一行中所有的 str1 為 str2
(注:m和n 為數字,若m為 .,表示為當前行開始;若n為$,則表示到最后一行結束)
如果使用 # 作為分隔符,則中間出現的 / 不會作為分隔符,比如:
:s#str1/#str2/# 替換當前行第一個 str1/ 為 str2/
:%s+/oradata/apras/+/user01/apras1+ (使用+ 來 替換 / ): /oradata/apras/替換成/user01/apras1/
2. 其他
:%s/str1/str2/(等同於 :g/str1/s//str2/) 替換每一行的第一個 str1 為 str2
:%s/str1/str2/g(等同於 :g/str1/s//str2/g 和 :1,$ s/str1/str2/g ) 替換文中所有 str1 為 str2
從替換命令可以看到,g 放在命令末尾,表示對搜索字符串的每次出現進行替換;不加 g,表示只對搜索
字符串的首次出現進行替換;g 放在命令開頭,表示對正文中所有包含搜索字符串的行進行替換操作。

3.回車換行符\n

:%s/\\n/str/g

:%s/str/\\n/g

即使使用gedit工具也是替換\\n(代表回車換行符\n)

4.舉例說明:

替換文檔中所有的/n為\n

:%s#/n#\\n#g

 

事實上查找替換中的分隔符是可以換成其他符號(不常用的其他符號)的,比如:@,&,#等


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM