2011-02-04 60 views
2

我使用這個命令下面刪除文件的第一列:嘗試刪除文檔的第一列。

%s/^[^\t]*\zs\t[^\t]*\ze//g 

,但它說,沒有發現命令。任何想法?

+0

你啓動命令行打字打冒號?你不用`S`而不是`s`? – Benoit 2011-02-04 09:59:18

+0

添加您正在處理的幾行文字。 – 2011-02-04 10:02:35

回答

0

如果我理解正確的話,這應該做的工作:

:%s/^[^\t]// 

則取消所有的主角是不是製表。

或者,如果您正在編輯一個製表符分隔值文件,並希望第一個製表之前刪除所有「列」,那麼這應該爲你做它:

%s/^[^\t]*\t// 
12

這裏是最快的方法除去第一列:

  1. 剋剋去文檔中的第一個字符。
  2. 點擊Ctrl + V進入視覺模塊模式。
  3. 命中ģ(即,換擋克)去文檔的末尾
  4. 命中X刪除的第一列。
3

我喜歡@Peter的塊選擇的解決方案,但如果你想使用替代你需要這個命令:

:%s/^.// 

讓我們來分析一下爲什麼這個工程:

  • :%s Exec中替換所有文件
  • /^./選擇行後的第一個字符
  • /並將其替換爲...無。
0

下面的命令爲我工作:

:%s/^\w*//