2013-03-04 55 views
0

我在Vim搜索和替換命令上使用了哪些字符?在VIM上使用退格搜索並替換

我試圖使這個:

1, 
2, 
3, 
4, 
5 

這樣:1, 2, 3, 4 ,5

,所以我認爲寫東西喜歡的::%s/$/\b/g

但即使我設置它不工作::set magic。 我該如何做到這一點?

+0

你試圖在一個空間中移動的逗號? – 2013-03-04 20:23:38

+0

我編輯了我的問題,每個編號都在不同的行上 – user1410363 2013-03-04 20:25:03

+1

看起來你只是想加入這些行,因爲你使用的是Vim,所以在可視模式下選擇行並按下'J'將它們連接在一起。 – professorsloth 2013-03-04 20:25:52

回答

5

換行符代表\n

所以,用這樣一個簡單的例子,你可以替換所有的換行:

%s/\n//g 

可以更換每個逗號,後跟可選的空白,直到有空間行的末尾,就像這樣:

:%s/,\s*$\n/, /g 

當然,J運營商將最有可能滿足您的需求也很不錯(試行Ĵip您希望連接的塊內。或者自動線根據您的textwidth設置包:qp

+0

感謝您提供Search and Replace和Visual解決方案,:%s/\ n// g對我來說工作得很好。 – user1410363 2013-03-04 20:41:36

3

你不需要:s這將做的工作:

gg5J 
1

使用該搜索和替換命令:

:%s/,\n/, /g 

\n字符的搜索字符串匹配換行符。

作爲旁註,如果您想在替換字符串中插入newline character,請務必使用\r代替。

0

您可以使用可視化模式來選擇你想加入

ggvGJ 

gg帶你到文檔的頂部線條。 v將您置於視覺模式 G帶您到文檔的底部(從而突出顯示所有行) J加入所選範圍中的所有行。

1

另一種方法是:join命令。

:%j 

欲瞭解更多信息,請參閱

:h :j