zoukankan      html  css  js  c++  java
  • vim 基础学习之global

    global命令可以在指定模式下,匹配行上进行Ex命令 使用格式:

     :[range]g[lobal]/{pattern}/[cmd]
    
    range-是执行范围(如果缺省,是%)
    
    global-命令关键字
    
    pattern-匹配内容
    
    cmd-Ex命令操作(缺省是print)

    这个命令还有两个反向命令

     global!
    
    vglobal(v)

    他们的意思是,在没有匹配pattern的行上,执行cmd操作

    global这个命令使用的时候,包括两步,

    第一步是获得已经拥有标记的pattern匹配内容,如果这个值是缺省值,那么会使用当前拥有标记的行

    产生标记的行方式有搜索结果、×选中等

    第二步才是执行cmd命令

    下面我们进入简单演示 看下面这段内容

     my name is xiaoming
    
    my name is xianghua
    
    my year is 34
    
    my class is 123 

    现在我们使用global删除所有包含name的行

    方法1.:global/name/d
    
    方法2.
    
    1)执行pattern标记行-/name
    
    2)执行global命令-global//d 

    现在我们把这篇文章中的所有包含name字符串的行,放到寄存器a中

    :global/name/y a 

    原以为上面的操作可以完成我们的需求,不过,你使用

    reg a

    会发现,输出的结果是

    :global/name/y a。

    原来,使用global执行cmd是一条条执行的,当我们使用 小写的a调用寄存器的时候,是覆盖寄存器的内容,这时候我们使用A(追加)就可以了。

    如下

    :global/name/y A

    如果我们想对下面的几行进行排序,我们怎么做?

    aeeufs
    
    rofwjejf
    
    roqfjljfa
    
    wpirgusjf
    
    qw[pegj 

    vim中排序命令是sort 所以,我们可以使用如下的方法

    方法一:命令行选中上面的五行内容,然后用命令行:sort就行了

    方法二:直接命令行:32,36 sort就行了

    上面只对一处排序,很简单。假如现在有如下内容

     a<
    
    rofwjejf
    
    aeeufs
    
    roqfjljfa
    qw[pegj
    
    
    wpirgusjf
    
    
    />
    
    a<
    
    aeeufs
    roqfjljfa
    
    rofwjejf
    
    wpirgusjf
    
    /> 
     a<
    
    rofwjejf
    
    aeeufs
    
    roqfjljfa
    qw[pegj
    
    
    wpirgusjf
    
    
    />
    
    a<
    
    aeeufs
    roqfjljfa
    
    rofwjejf
    
    wpirgusjf
    
    /> 

    我们可以使用如下命令

    :g/</+1,//>/-1 sort


    它的意思就是,从 /</+1开始到//>/-1为止的匹配项中执行sort操作
    它其实是

    :[range]g[lobal]/{pattern}/[cmd]的扩展形式

    :g/{star}/,/{end}/ cmd


    这个感觉跟前种形式都是一致的,都是给cmd明确一个执行的范围。
    :g 定位范围 命令

  • 相关阅读:
    集合 排序 判断元素相等 [MD]
    软键盘 输入法管理器 InputMethodManager
    VideoView 视频播放 示例
    富文本 Htmll类 html标签
    MediaPlayer+SurfaceView 视频播放 示例
    SoundPool 音频播放 详解 示例
    MediaPlayer 音频播放 示例
    Strategy 策略模式 MD
    Chain of Responsibility 责任链模式 [MD]
    Iterator 迭代器模式 [MD]
  • 原文地址:https://www.cnblogs.com/zhangshuli-1989/p/hq_15_12_20_17_42.html
Copyright © 2011-2022 走看看