`

vim全局替换命令

阅读更多
语法为 :[addr]s/源字符串/目的字符串/[option]
全局替换命令为::%s/源字符串/目的字符串/g

    [addr] 表示检索范围,省略时表示当前行。
    如:“1,20” :表示从第1行到20行;
    “%” :表示整个文件,同“1,$”;
    “. ,$” :从当前行到文件尾;
    s : 表示替换操作
    [option] : 表示操作类型
    如:g 表示全局替换;
    c 表示进行确认
    p 表示替代结果逐行显示(Ctrl + L恢复屏幕);
    省略option时仅对每行第一个匹配串进行替换;
    如果在源字符串和目的字符串中出现特殊字符,需要用”\”转义

下面是一些例子:
#将That or this 换成 This or that
:%s/\(That\) or \(this\)/\u\2 or \l\1/
—-
#将句尾的child换成children
:%s/child\([ ,.;!:?]\)/children\1/g
—-
#将mgi/r/abox换成mgi/r/asquare
:g/mg\([ira]\)box/s//mg//my\1square/g    <=>  :g/mg[ira]box/s/box/square/g
—-
#将多个空格换成一个空格
:%s/  */ /g
—-
#使用空格替换句号或者冒号后面的一个或者多个空格
:%s/\([:.]\)  */\1 /g
—-
#删除所有空行
:g/^$/d
—-
#删除所有的空白行和空行
:g/^[  ][  ]*$/d
—-
#在每行的开始插入两个空白
:%s/^/>  /
—-
#在接下来的6行末尾加入.
:.,5/$/./
—-
#颠倒文件的行序
:g/.*/m0O  <=> :g/^/m0O
—-
#寻找不是数字的开始行,并将其移到文件尾部
:g!/^[0-9]/m$ <=> g/^[^0-9]/m$
—-
#将文件的第12到17行内容复制10词放到当前文件的尾部
:1,10g/^/12,17t$
~~~~重复次数的作用
—-
#将chapter开始行下面的第二行的内容写道begin文件中
:g/^chapter/.+2w>>begin
—-
:/^part2/,/^part3/g/^chapter/.+2w>>begin
—-
:/^part2/,/^part3/g/^chapter/.+2w>>begin|+t$
分享到:
评论

相关推荐

    vim操作键盘图

    vim各个操作按键在键盘上的分布图,包括保存,退出,打开文件,全局替换等等命令,方便记忆!

    vim user manual ---vim用户手册

    请从头至尾细读本章, 本章讲述Vim的基本命令. jusr 01.txtj 关于本手册 j01.1j 两套帮助 j01.2j 关于安装 j01.3j 使用Vim教程 j01.4j 版权 jusr 02.txtj Vim第一步 j02.1j 首次运行Vim j02.2j 插入文本 9 10 第00章...

    学习vi和vim编辑器

     ·使用vi的全局搜索与替换功能  ·自定义vi,并执行unix的命令  ·使用vim的扩展文本对象以及威力强大的正则表达式  ·执行多窗口编辑,并设计vim脚本  ·充分利用图形化用户界面版的vim,gvim  ·使用vim的...

    学习vi和vim编辑器_第7版_中文+英文_PDF

    ·使用vi的全局搜索与替换功能 ·自定义vi,并执行Unix的命令 ·使用Vim的扩展文本对象以及威力强大的正则表达式 ·执行多窗口编辑,并设计Vim脚本 ·充分利用图形化用户界面版的Vim,gvim ·使用Vim的强化...

    学习vi和vim编辑器_第7版_中文

    ·使用vi的全局搜索与替换功能 ·自定义vi,并执行Unix的命令 ·使用Vim的扩展文本对象以及威力强大的正则表达式 ·执行多窗口编辑,并设计Vim脚本 ·充分利用图形化用户界面版的Vim,gvim ·使用Vim的强化...

    学习VI和VIM编辑器第7版中文

    ·使用vi的全局搜索与替换功能 ·自定义vi,并执行Unix的命令 ·使用Vim的扩展文本对象以及威力强大的正则表达式 ·执行多窗口编辑,并设计Vim脚本 ·充分利用图形化用户界面版的Vim,gvim ·使用Vim的强化...

    Learning the vi and Vim Editors

    你将学到以下内容:, · 高效使用vi, · 深入讲解vi的知识,例如使用缓存, · 使用vi的全局搜索替换功能, · 定制vi以及运行Unix命令.., · 使用Vim的扩展文本对象和强大正则表达式, · 使用多窗口编辑并且编写Vim...

    Hacking Vim

    2.1全局替换 2.2多文件替换 2.3增加多行注释 2.4 ab技巧 2.5分割窗口功能 2.6改变颜色配置 2.7显示和不显示行号 2.8更好的状态行 2.9光标行和光标列 2.10语言拼写检查 2.11键绑定 2.12定位功能 2.13 自动补全 2.14 ...

    Vim用户手册中文版72.pdf

    10.4 全局命令 10.5 Visual block模式 10.6 读写部分文本 10.7 格式化文本 10.8 改变大小写 10.9 使用外部程序 第11章 灾难恢复 11.1 基本方法 11.2 交换文件在哪? 11.3 是不是死机了? 11.4 进一步的学习 第12章 ...

    《学习Vi编辑器(第六版)》.pdf

    这本书将带领读者快速地学习基本的编辑、光标移动以及全局查找与替换操作,然后是更灵活的vi功能,以及如何在vi中使用功能强大的ex行编辑器来提高编辑技巧。为了便于读者参考,本书第六版还在每个相应章节的最后增加...

    vim-MergeWithRegister:合并文本与寄存器的内容

    通过Ingo Karkat 描述 使用ReplaceWithRegister.vim插件,可以用寄存器的内容替换现有的文本。 为此,目标文本必须已经以... 像在命令行窗口中一样,您可以使用所有的Vim命令。 全局适应比粘贴到缓冲区中之后进行编辑要

    vim-kata-meetup:支持 2012-11-12 波士顿 Vim 聚会的回购

    Vim Kata 聚会这个 repo 是... 试试全局命令。维姆迪夫Vimdiff(两个缓冲区中的:diffthis命令)对理解问题有很大帮助。 以下地图可以帮助激活 vimdiff 模式。 要启用差异模式,只需在两个缓冲区中使用&lt;leader&gt;dt映射。

    autojump.vim:在vim中添加了自动跳转支持

    用法在大多数(也许是所有)情况下, :J替换:e 。 当打开以前打开的文件时:J file_path_fragment将打开与file_path_fragment匹配的最常用文件。 :J维护两个可能的匹配列表。 首先,它将在当前工作目录及其子目录中...

    dotfiles:我的点文件。 已弃用。 转到-> https

    Vim 有用的命令和快捷方式 自动补全 文件导览 G; 转到更改列表中的较旧位置。 G, 转到变更列表中的较新位置。 % 跳转到匹配的左括号或右括号。 搜索,替换和突出显示 /[学期] 搜索词。 / [条款] / e 搜索...

    Linux常用的命令。。。。。

    配置dns : vim /etc/resolv.conf nameserver(命令) ip 立刻生效 hostname 主机名 /etc/sysconfig/network (里面有全局网关gateway) hostname +主机名 可以立刻改名,但未写入文件中 /etc/hosts 本地域名解析,可以改...

    学习vi编辑器(第六版)

    Learning.the.VI.Editor.6th ... ◆ 全局查找与替换  ◆ 定制 vi和 ex  ◆ 命令的简化操作  ◆ 介绍vi克隆版本的扩展  ◆ nvi、elvis、vim和vile编辑器  ◆ vi和 ex命令总结  ◆ vi和Internet

    学习vi编辑器[高清中文]第六版.part1

     这本书将带领读者快速地学习基本的编辑、光标移动以及全局查找与替换操作,然后是更灵活的vi功能,以及如何在vi中使用功能强大的ex行编辑器来提高编辑技巧。为了便于读者参考,本书第六版还在每个相应章节的最后...

    学习vi编辑器[高清中文]第六版.part2

     这本书将带领读者快速地学习基本的编辑、光标移动以及全局查找与替换操作,然后是更灵活的vi功能,以及如何在vi中使用功能强大的ex行编辑器来提高编辑技巧。为了便于读者参考,本书第六版还在每个相应章节的最后...

Global site tag (gtag.js) - Google Analytics