如何使用VIM删除聊天记录中的Skype时间戳?

时间:2012-12-06 19:30:52

标签: vim text

我有一些我要清理的Skype聊天记录。它们看起来像这样:

[12-12-6 下午1:54:53] Xerxes: Bla Bla 
[12-12-6 下午1:55:23] Aron: Bla Bla Bla
[12-12-6 下午1:55:29] Aron: Bla

我可以在VIM中使用什么命令来删除括号[]中的所有内容(包括括号本身)?

3 个答案:

答案 0 :(得分:6)

替代的替代方案:

:%norm da]x

说明:

  • :normal {commands}在正常模式下为行
  • 运行{commands}
  • :norm:normal
  • 的缩写
  • :%norm在文件的每一行上运行:normal命令
  • da]删除该行开头的[]
  • x删除]
  • 后面的空格

如需更多帮助,请参阅:

:h range
:h :norm
:h a]
:h d
:h x

答案 1 :(得分:3)

或者,从第一个光标开始[你可以这样做:

d%xj

其中:

  • d%删除匹配的大括号
  • x删除尾随空格
  • j向下移动到下一行

此外,您可以将其记录为宏:

qqd%xjq

然后快速播放,每行都有@@(或99@@重复99行等等。)

答案 2 :(得分:1)

只需substitute即可:

:%s/^\[.*\] //g