vim的匹配删除
1.一个文本类似:
12.123 32.321 21.123 15.789 1.000 nan nan
xxxxxx xxxxxx xxxxxx xxxxxx xxxxx xxx xxx
如此规则的文本。我想每行保留前三种数据即12.123 32.321 21.123,后面的数据就全删除掉。
2.最近学习vim的匹配,想通过vim的匹配技巧去处理。
%s/^s{3}.*//g(从行首匹配到第三个空白符后再匹配任意数量的任意字符然后用空白替换掉)。显然达不到我想要的结果
所以想问一下这里正确的匹配该怎么写
在此感谢
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
用正则分组
这样的任务(结构化文本,特定分隔符)最好的工具是awk,你不觉得在vim里要写太多的令你眼花的转义符吗。
匹配倒还没想到。但是可以通过 “宏” 来操作。。
光标定在第一行第一个字符:
qq
WWWlDj0q
@q (有100行就 100@q)