vim 文本操作

clipboard.png


请问: 如何能通过vim中的相关操作 ,值保留圈出来的内容  形式为:

logRequest
userId: 0
UpdateNickName
userId: 10034
CommonUserData
userId: 10034

麻烦说下详细步骤,谢谢

阅读 1.7k
1 个回答

利用 vim 命令模式的正则替换功能可以实现。

示例文本:

aaaaaaaaaa logRequest UpdateNickName bbbbbbbbbbbbbbb userId: 10034
aaaaaaaaaa logRequest UpdateNickName bbbbbbbbbbbbbbb userId: 10034
aaaaaaaaaa logRequest UpdateNickName bbbbbbbbbbbbbbb userId: 10034
aaaaaaaaaa logRequest UpdateNickName bbbbbbbbbbbbbbb userId: 10034
aaaaaaaaaa logRequest UpdateNickName bbbbbbbbbbbbbbb userId: 10034
aaaaaaaaaa logRequest UpdateNickName bbbbbbbbbbbbbbb userId: 10034

第一步::%s/.*logRequest/logRequest/g
执行结果如下:

logRequest UpdateNickName bbbbbbbbbbbbbbb userId: 10034
logRequest UpdateNickName bbbbbbbbbbbbbbb userId: 10034
logRequest UpdateNickName bbbbbbbbbbbbbbb userId: 10034
logRequest UpdateNickName bbbbbbbbbbbbbbb userId: 10034
logRequest UpdateNickName bbbbbbbbbbbbbbb userId: 10034
logRequest UpdateNickName bbbbbbbbbbbbbbb userId: 10034

第二步::%s/\w\+ userId/userId/g
结果如下:

logRequest UpdateNickName userId: 10034
logRequest UpdateNickName userId: 10034
logRequest UpdateNickName userId: 10034
logRequest UpdateNickName userId: 10034
logRequest UpdateNickName userId: 10034
logRequest UpdateNickName userId: 10034
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进