Vim查找替换

Vim查找替换1、查找/pattern:向下查找pattern匹配字符串?pattern:向上查找pattern匹配字符串使用了查找命令之后,使用如下两个键快速查找:n:按照同一方向继续查找N:按照反方向查找除此之外,pattern还可以使用一些特殊字符,包括(/、^、$、*、.),其中前三个这两个是vi与vim通用的,“/”为转义字符。在查找模式中加入\c表示大小写不敏感查找,\C表示大小写敏感查找。例如:/foo\c将会查找所有的”foo”,“FOO”,”Foo”等字符串1:/^abc

大家好,又见面了,我是你们的朋友全栈君。

1、查找

/pattern :向下查找pattern匹配字符串
?pattern:向上查找pattern匹配字符串

使用了查找命令之后,使用如下两个键快速查找:
n:按照同一方向继续查找
N:按照反方向查找

除此之外,pattern还可以使用一些特殊字符,包括(/、^、$、*、.),其中前三个这两个是vi与vim通用的,“/”为转义字符。

在查找模式中加入\c表示大小写不敏感查找,\C表示大小写敏感查找。例如:
/foo\c将会查找所有的”foo”,“FOO”,”Foo”等字符串

1: /^abc #查找以abc开始的行
2: /abc$ #查找以abc结束的行
3: //^abc #查找^abc字符串

2、查找与替换

:’<,’>s/foo/bar/g 选区,在Visual模式下选择区域后输入:,Vim即可自动补全为 :’<,’>。

命令用来查找和替换字符串。语法如下:
:{作用范围}s/{目标}/{替换}/{替换标志}

:%s/foo/bar目标的第一次出现将foo替换为bar
:%s/foo/bar/g会在全局范围(%)查找foo并替换为bar,所有出现都会被替换(global)
: s/foo/bar/g当前行将foo替换为bar
:%s/foo/bar/g全文行将foo替换为bar
:5,12s/foo/bar/g第5到12行将foo替换为bar
:.,+2s/foo/bar/g当前行.与接下来两行+2将foo替换为bar
:%s/foo/bar/i 表示大小写不敏感查找,I表示大小写敏感:
:%s/foo\c/bar等效于模式中的\c(不敏感)或\C(敏感)
:%s/foo/bar/gc 这里c表示需要确认,例如全局查找”foo”替换为”bar”并且需要确认
replace with bar (y/n/a/q/l/E/Y)? 回车后Vim会将光标移动到每一次”foo”出现的位置,并提示按下y表示替换,n表示不替换,a表示替换所有,q表示退出查找模式, l表示替换当前位置并退出。E与Y是光标移动快捷键,参考: Vim中如何快速进行光标移

1、 : s/vivian/sky/ #替换当前行第一个 vivian 为 sky
2、 : s/vivian/sky/g #替换当前行所有 vivian 为 sky
3、 :n,KaTeX parse error: Expected ‘EOF’, got ‘#’ at position 19: …ivian/sky/ #̲替换第 n 行开始到最后一行中…s/vivian/sky/g #替换第 n 行开始到最后一行中每一行所有 vivian 为 sky
(n 为数字,若 n 为 .,表示从当前行开始到最后一行)
5、 :%s/vivian/sky/ #(等同于:1,$s/vivian/sky/ :g/vivian/s//sky/) 替换每一行的第一个 vivian 为 sky

可以使用 #或+ 作为分隔符,此时中间出现的 / 不会作为分隔符
1、: s#vivian/#sky/# 替换当前行第一个 vivian/ 为 sky/
2、:%s+/oradata/apras/+/user01/apras1+ (使用+ 来 替换 / ): /oradata/apras/替换成/user01/apras1/

1、 : s/str1/str2/ #用字符串 str2 替换行中首次出现的字符串 str1
2、 : s/str1/str2/g #用字符串 str2 替换行中所有出现的字符串 str1
3、 :.,$ s/str1/str2/g #用字符串 str2 替换正文当前行到末尾所有出现的字符串 str1
4、 :1,$ s/str1/str2/g #用字符串 str2 替换正文中所有出现的字符串 str1
5、 :g/str1/s//str2/g #功能同上

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/148264.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 软件工程中的需求分析(软件工程需求分析任务)

    第一部分需求规格说明书1.引言1.1编写目的1.2项目背景1.3定义1.4参考资料1.1编写目的目前我校的校园二手交易市场多是利用超级课程表上的“跳蚤市场”以及本校的贴吧进行,两者都形成了一定的规模。但是贴吧上的交易不够规范,而超级课程表改版之后对“跳蚤市场”这一模块也不够重视,对其入口进行了更改,进入不方便了,导致流量减少,目前在上面发布交易信息的人寥寥无几。…

    2022年4月9日
    100
  • pycharm安装tensorflow等各种三方库失败,解决方案[通俗易懂]

    pycharm安装tensorflow等各种三方库失败,解决方案[通俗易懂]参考以下三个回答:https://blog.csdn.net/xiao_xian_/article/details/88181845解决pycharm导入三方库得方法https://blog.csdn.net/weixin_41923961/article/details/86584683解决pycharm+anaconda环境导入方法https://blog.csdn.ne…

    2022年8月26日
    6
  • Caffe2安装_caffe教程

    Caffe2安装_caffe教程一、依赖库的安装首先1.首先需要安装Ubuntu16.04与14.04都需要的依赖库。sudoaptupdatesudoaptinstall-y–no-install-recommends\build-essential\cmake\git\libgoogle-glog-dev\lib…

    2025年7月18日
    4
  • 通用计算机指令,计算机移位指令[通俗易懂]

    通用计算机指令,计算机移位指令[通俗易懂]移位指令移位指令对操作数按某种方式左移或右移,移位位数可以由立即数直接给出,或由CL间接给出。移位指令分一般移位指令和循环移位指令。1一般移位指令(1)算术/逻辑左移指令。格式:SALDEST,OPRDSHLDEST,OPRD功能:按照操作数OPRD规定的移位位数,对目的操作数进行左移操作,最高位移入CF中。每移动一位,右边补一位0。如图312(a)所示。目的操作数可以为通用寄存器或存储…

    2022年4月29日
    68
  • kali安装步骤

    kali安装步骤kali镜像下载地址:http://mirrors.ustc.edu.cn/kali-images/1.    新建虚拟机 -选择自定义选择虚拟机硬件兼容性(默认我的是12.0)选择下一步选择稍后安装操作系统-下一步选择linux内核3.x 64位-下一步修改虚拟机名称为kali2.0   路径为我自己在G创建的kali文件夹处理器 1核我本机物理内存不大够了所以设置512M-…

    2022年5月6日
    61
  • 可重入锁详解(什么是可重入)

    可重入锁详解(什么是可重入)可重入锁详解概述什么是“可重入”,可重入就是说某个线程已经获得某个锁,可以再次获取锁而不会出现死锁。例如packagecom.test.reen;//演示可重入锁是什么意思,可重入,就是可以重复获取相同的锁,synchronized和ReentrantLock都是可重入的//可重入降低了编程复杂性publicclassWhatReentrant{ publicsta…

    2022年4月19日
    48

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号