如何在Vim中只替换全字匹配?

gui*_* 桂林 12 regex vim

代码示例:

for file in files:
  do_something(root+file)
Run Code Online (Sandbox Code Playgroud)

我想替换file,f但我必须保持files.

通常我使用以下命令:

:%s/file/f/gcI
Run Code Online (Sandbox Code Playgroud)

但它也匹配files.有没有办法只匹配一个适用于(root + file)语法的整个单词?

liv*_*ter 28

使用\<\>匹配单词的开头和结尾:

:%s/\<file\>/f/gcI
Run Code Online (Sandbox Code Playgroud)

  • `\ <`和`\>`不是特定于vim的东西.它是一种常用的正则表达式,用于表示完整的单词. (3认同)