substitute 命令与 global 命令
他们是很强大的EX命令:
substitute的格式:
:[range]s[ubstitute]/{pattern}/{string}/{flags}其中的patttern 指的是正则表达式的匹配;
flags:为标志位:
注意:
1. 所以呢,在缺省情况下,substitute命令仅仅作用于当前行, 而且只会修改第一处匹配;
2. 第二点: 当查找留空时,VIM 会重用上次的查找模式;所以,可以分开写成的下面的形式:
:/{pattern}
:[range]s[ubstitute]//{string}/{flag}
替换域中作用寄存器的内容:
方法1: 使用ctrl-r{register}方法,就可以把编辑模式下把寄存器里的内容放入;
方法2:替换域中出现 \= 时将指示VIM执行一段表达式脚本。在VIM脚本中,可以用@{寄存器}来引用寄存器的内容,所以呢, 下面就可以实现:
:[range]s[ubstitute]/{pattern}/\=@{寄存器}/{flags}
Global 命令:
使用方法:
:[range] global[!] /{pattern}/ [cmd]表示:在指定的匹配行上执行指定的 cmd;
其中,用 global! 或 vglobal 表示没有匹配到指定模式的行上执行[cmd].
global 可以略写为g; vglobal 可以略写为v;
其它:
vim中的宏;
模式;
工具: 通过ctags 建立索引,用于浏览源代码;
自动补全;
substitute 命令与 global 命令的更多相关文章
- Mysql命令show global status求根溯源
近来,发现好多公司对mysql的性能监控是通过show global status实现的,因此对于这个命令想要探究一番,看他是否是实时更新的. 在此之前,我们必须搞明白mysql对于这个命令的执行过程 ...
- vim global命令
global命令格式 : [range]global/{pattern}/{command} global命令在[range]指定的文本范围内(缺省为整个文件)查找{pattern},然后对匹配到的行 ...
- Vim global命令和重复操作
Vim global命令和重复操作 Vim global命令允许我们在某个指定模式的所有匹配行上运行可执行的 Ex 命令,缩写形式为 :g,其处理重复工作的效率极高. 一.Vim global命令介绍 ...
- Linux中使用sed命令或awk命令修改常规配置文件
一.方案: Linux中使用sed命令或awk命令修改常规配置文件 二.步骤: 1.假设有一个a.txt,内容如下: #!/bin/bash aa= bbb= ccc= #ddd= 2.如果想要把里面 ...
- Git 内部原理 - (1)底层命令和高层命令 (2Git 对象
文章摘选自git官网,这里复制下来表示我已阅读并学习过一次这些内容: 无论是从之前的章节直接跳到本章,还是读完了其余章节一直到这——你都将在本章见识到 Git 的内部工作原理和实现方式. 我们发现学习 ...
- 玩转ADB命令(ADB命令使用大全)转载
ADB是什么 Adb的全称为Android Debug Bridge:android调试桥梁,下图为Android官方对adb的介绍:可以看出,Android的初衷是用adb这样的一个工具来协助开发人 ...
- Linux centos7 shell 介绍、 命令历史、命令补全和别名、通配符、输入输出重定向
一.shell介绍 shell脚本是日常Linux系统管理工作中必不可少的,不会shell,就不是一个合格管理员. shell是系统跟计算机硬件交互使用的中间介质,一个系统工具.实际上在shell和计 ...
- centos7的netca命令和netmgr命令、dbca命令等基础知识点
netca命令: netmgr命令: dbca命令: database assistant configuration 中的SGA 和PGA SGA:System Global Area是Oracl ...
- 【命令】top命令
功用: <---实时动态地查看系统的整体运行情况,两个命令都是查看运行状况,但是htop更加易用---> TOP是一个动态显示过程,即可以通过用户按键来不断刷新当前状态.如果在前台执行该命 ...
随机推荐
- android studio - Indexing paused due to batch updated
傻逼的 Android Studio 又开抽疯了.... 日 打开项目就出现 Indexing paused due to batch updated ,并且半天没反应........ 解决办 ...
- Spanner_
https://en.wikipedia.org/wiki/Spanner_(database) http://static.googleusercontent.com/media/research. ...
- mysql++ Query
mysqlpp:: Query类存储了Connection的指针,可以用它进行SQL语句的增删改查. 连上数据库后,使用mysqlpp::Connection::query()获取Query对象 Qu ...
- Java获取某个月的天数
https://blog.csdn.net/wtopps/article/details/48262221 ********************************************** ...
- 【Java】LinkedBlockingQueue、PriorityQueue and ConcurrentLinkedQueue
1.LinkedBlockingQueue: 基于链接节点的可选限定的blocking queue . 这个队列排列元素FIFO(先进先出). 队列的头部是队列中最长的元素. 队列的尾部是队列中最短时 ...
- spring 强制采用cglib进行代理
spring对AOP的支持 *如果目标对象实现了接口,默认情况下会采用JDK的动态代理实现AOP* 如果目标对象实现了接口,可以强制使用CGLIB实现AOP*如果目标对象没有实现了接口,必须采用CGL ...
- iOS增加pch预加载文件
1.) 打开你的Xcode工程. 在Supporting Files目录下,选择 File > New > File > iOS > Other > PCH File ...
- python seaborn 画图
python seaborn 画图 59888745@qq.com 2017.08.02 distplot( ) kdeplot( ) distplot( )为hist加强版, kdeplot( ) ...
- junit import org.junit.Test 报错
由于用的是父-子项目 在自项目中各种改都不行,还是报错,而且子项目中明明已经导入了还在报错,后面发现是父项目中的scope是test 注释掉就好了
- Go Revel - Controllers(控制器)
Controller(控制器)整个revel都是围绕它处理所有请求 控制器可以是任何直接或间接内嵌了`*revel.Controller`类型的结构,如: type AppController str ...