2009-06-26 31 views

回答

88

:%s/ /Ctrl鍵v返回/g

Ctrl鍵v是控制鍵加號鍵v和返回是返回鍵(主鍵盤上的一個,而不是回車鍵在numpad上)。其他字符照常輸入。

如果輸入正確,序列Ctrl鍵v返回將顯示爲字符^M,通常以不同的顏色,以表明他們是特殊的。請注意,實際打字^M不是工作。

另請注意,在Vim for windows中,它是Control-q而不是Control-v(因爲它是粘貼)。


CTRL-V還允許通過鍵盤輸入等 「特殊」 鍵。它也適用於例如Tab或Backspace。

+0

我接受答案,因爲它是最獨立於系統的。 samoz答案也有效。令人驚訝的是Windows的命令在我的OS/X中運行,而不是Unix命令。 – 2009-06-26 13:40:02

+12

:%s// \ r/g也適用於所有操作系統。 – DrAl 2009-06-26 14:23:34

7

輸入以下命令:

:s//

,現在按Ctrl-V或Ctrl-Q(取決於您的配置),然後按Enter鍵。你現在應該有:

:s/ /^M 

完成它:

:s/ /^M/g 

,你是好去。

2

嘗試要麼

對於Unix:

:1,$s/\ /\n/g 

對於Windows:

:1,$s/\ /\r/g 

這包含空格轉義字符。

2

具體到尾隨字符回答你的問題,這是你所指定的正則表達式:

:%s/ /s/\n/g 

你有太多的/。什麼情況是,你s替換「」,然後替換後這個標籤:\n/g

我想你的意思是這樣的:

:%s/ \s/\n/g 

請注意,您/s改爲\s。現在替換將用\n替換一個空格,後面跟一個任意類型的空格(空格或製表符)。我懷疑這是否能解決問題或用換行符替換空格,但應該解釋錯誤消息。