VIM不替换点标点符号后的单词。如何改变它?
我有以下问题 全文如下:VIM不替换点标点符号后的单词。如何改变它?,vim,Vim,我有以下问题 全文如下: printf("sysname %s",ut.sysname); 我想使用vim逐行替换sysname。我在gvim中键入命令: :s/sysname/version 我希望得到如下输出: printf("version %s",ut.version); printf("version %s",ut.sysname); 但我得到的输出如下: printf("version %s",ut.version); printf("version %s",ut.sysn
printf("sysname %s",ut.sysname);
我想使用vim逐行替换sysname。我在gvim中键入命令:
:s/sysname/version
我希望得到如下输出:
printf("version %s",ut.version);
printf("version %s",ut.sysname);
但我得到的输出如下:
printf("version %s",ut.version);
printf("version %s",ut.sysname);
我做错了什么?您缺少适用于当前行上所有匹配项的g命令,而不是仅第一个:
:s/sysname/version/g
作为奖励:
:%s/sysname/version/g
将替换当前文件中的所有匹配项,而不仅仅是当前行上的匹配项。您缺少适用于当前行上所有匹配项的g命令,而不仅仅是第一个:
:s/sysname/version/g
作为奖励:
:%s/sysname/version/g
将替换当前文件中的所有事件,而不仅仅是当前行上的事件。在一行上执行此操作
:s/sysname/version/g
您也可以在输入之前使用qq宏录制器,然后在输入之后按q,然后使用@q在您要替换的任何其他行上重播该宏录制器。或按:向上选择旧命令
或者在每一行上都这样做:
:%s/sysname/version/g
然而,更换每一条线时,你应该小心。如果有很多文本,试着让替换内容更具体
我愿意
:%s/\printf\sysname\.*\sysname/\1version\2version在一行中执行此操作
:s/sysname/version/g
您也可以在输入之前使用qq宏录制器,然后在输入之后按q,然后使用@q在您要替换的任何其他行上重播该宏录制器。或按:向上选择旧命令
或者在每一行上都这样做:
:%s/sysname/version/g
然而,更换每一条线时,你应该小心。如果有很多文本,试着让替换内容更具体
我愿意
:%s/\printf\sysname\.*\sysname/\1version\2version