温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

Vim中的替换命令是什么

发布时间:2021-11-11 17:16:42 来源:亿速云 阅读:428 作者:柒染 栏目:大数据

今天就跟大家聊聊有关Vim中的替换命令是什么,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。

语法

Vim可以利用:substitute命令将指定的字符替换成其他字符,通常使用命令的缩写格式:s。借用正则表达式则可以实现更为丰富的替换功能,基本语法是:

:[range]s/源字符串/目标字符串/[option]

range和option是可以缺省不填的,各个字段的意思是:

range:代表检索范围,默认缺省表示当前行检索,1,10表示从第1到第10行,%代表整个文件,等价于1,$,而.,$代表从当前行到文件末尾

s:substitute的简写,代表替换

option:代表操作类型,默认缺省只对第一个匹配的字符进行替换,g(global)全局替换,c(comfirm)操作时确认,i(ignorecase)不区分大小写,这些选项可以组合使用

比如以下命令,将会显示将要做改动的文本并要求确认:

:1,$s/foo/bar/gc
replace with foo(y/n/a/q/l/^E/^Y)?

这时你可以选择如下操作:

y Yes:执行这个替换
n No:取消这个替换
a All:执行所有替换而不要再询问
q Quit:退出而不做任何改动
l Last:替换完当前匹配点后退出
CTRL-E 向上翻滚一行
CTRL-Y 向下翻滚一行
实用案例

1. 将光标所在行出现的所有包含aa的字符串中aa替换为bb

:s/aa/bb/g

2. 将文档中出现的所有包含aa的字符串中的aa 替换为bb

:%s/aa/bb/g

3. 将从12行到23行中出现的所有包含aa的字符串中的aa替换为bb

:12,23s/aa/bb/g

4. 全文的行首加入 # 字符,在Python中批量注释的时候非常有用

:%s/^/#/

5. 将所有行尾多余的空格删除

:%s= *$==

6. 删除所有的空行, 这里的g表示对文章中所有符合要求字符串执行替换操作,^表示行首,$表示行尾

:g/^$/d

看完上述内容,你们对Vim中的替换命令是什么有进一步的了解吗?如果还想了解更多知识或者相关内容,请关注亿速云行业资讯频道,感谢大家的支持。

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

vim
AI