2011-10-11 47 views
0

我有一個文本文件,其中包含許多語句,比如:「1」,「23」,.....等等,我想用1,23 ....等替換這些事件這只是刪除引號。我如何在VIM中做到這一點?vim中的正則表達式在做替換時

+1

在哪裏的問題? –

+0

你應該運行'vimtutor'。 – Benoit

回答

4

用途:

:%s/"\(\d\+\)"/\1/g 

這意味着:與數字本身的序列代替雙引號之間的數字的序列。

更多參考:

:help :s 
:help pattern 
+0

搜索命令的一個有用的例子,但恕我直言簡單's /「// g'做」只刪除引號「的問題 – Ves

2

您類型ESC然後:任何數字 「任何數字」:

:%s/\"\([0-9]*\)\"/\1/g 

這將替代模式。 注意\1將複製什麼已經在這些匹配:\(\)

+0

要求這也將刪除任何一對連續的雙引號內沒有數字 – Benoit

+0

你是right ... – lc2817

0

你可以做到這樣的 -

:%s/"\(\d\+\)"/\1/c 
+2

'/ c'會要求確認,並且每行只有一次,你至少還要添加'g'標誌。 – Benoit