欢迎来到尧图网

客户服务 关于我们

您的位置:首页 > 新闻 > 会展 > Vim 中替换字符或文本

Vim 中替换字符或文本

2025/4/30 18:38:08 来源:https://blog.csdn.net/weixin_43949256/article/details/147617090  浏览:    关键词:Vim 中替换字符或文本

在 Vim 中替换字符或文本可以使用 替换命令(substitute),其基本语法为:

:[range]s/old/new/[flags]

1. 基本替换

命令说明
:s/foo/bar/替换当前行的第一个 foobar
:s/foo/bar/g替换当前行的 所有 foobar
:%s/foo/bar/g替换 全文foobar
:5,10s/foo/bar/g替换第 5 行到第 10 行的 foobar

2. 正则表达式替换

命令说明
:%s/^foo/bar/g替换所有 行首foobar
:%s/foo$/bar/g替换所有 行尾foobar
:%s/\<foo\>/bar/g替换 完整单词 foobar(不匹配 foobar
:%s/foo/bar/gc替换时 逐个确认y 替换,n 跳过)

3. 特殊字符转义

如果替换内容包含 / 或特殊字符,可以用 \ 转义,或换分隔符(如 #):

:%s/http:\/\/example.com/https:\/\/new.site.com/g
:%s#http://example.com#https://new.site.com#g

4. 删除字符

命令说明
:s/foo//g删除当前行的所有 foo
:%s/\s\+$//g删除全文行尾的 多余空格

5. 可视模式替换

  1. Ctrl + V 进入块选择模式,选中多行。
  2. 输入 :s/foo/bar/g,Vim 会自动填充为 :'<,'>s/foo/bar/g,仅替换选中部分。

示例

Hello world
world is great
world of vim
  • 替换全文 worldEarth

    :%s/world/Earth/g
    

    结果:

    Hello Earth
    Earth is great
    Earth of vim
    
  • 仅替换第 2 行的 world

    :2s/world/Earth/
    

总结

场景命令
当前行替换:s/old/new/
全文替换:%s/old/new/g
带确认替换:%s/old/new/gc
删除文本:s/old//g
正则替换:%s/\<word\>/new/g

Vim 的替换功能非常强大,结合正则表达式可以高效处理复杂文本!

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com

热搜词