Vim 的文字取代是如下:
:s/abc/def/g
將 abc 換成 def:s/\d\d\d/aaa/g
使用 regex, 將連續三個數字換成 aaa
但是換行的 regex 該怎麼寫, ex: 要將 ,
變成 \n,
, 理所當然就 :s/,/\n,/g 會發現變成 ^@,
, 而不是換行.
經過亂測, 原來 Vim regex 的換行是要用 \r
, 而不是 \n
. 所以要將 ,
變成 換行,
要如下:
- :s/,/\r,/g
感謝 jeffhung 指點:
- 要在 vim 的 regex 裡輸入 \n,請先按 Ctrl-V 然後再按 enter
- 若在 gvim 裡面要按 Ctrl-Q 再按 Enter