zoukankan      html  css  js  c++  java
  • vi查找和替换

    vi的使用--使用vi查找和替换

    vi提供了几种定位查找一个指定的字符串在文件中位置的方法。同时还提供一种功能强大的全局替换功能。

    1. 查找一个字符串

        一个字符串是一行上的一个或几个字符。
        为查找一个字符串,在vi命令模式下键入“/”,后面跟要查找的字符串,再按回车。vi将光标定位在该串下一次出现的地方上。键入n跳到该串的下一个出现处,键入N跳到该串的上一个出现处。
        为了在文件中回头查找,使用?代替/。在此情况下,键入n跳到该串的上一个出现处,键入N跳到该串的下一个出现处
        如果vi找到要求的串,光标会停留在该串第一次出现的地方。如果没有找到该串,vi会在屏幕的最后一行显示pattern not found。
        查找通常是区分大小写的,如果希望vi在查找过程中忽略大小写,则键入:set ic。要使其变回默认状态,则键入:set noic。
        某些特殊字符(/&!.^*$\?)对查找过程有特殊意义,因此如果这些字符出现在查找串中必须进行转意。为转意一个特殊字符,需要在该字符前面加一个反斜杠(\)。例如,要查找字符串anything?,则键入/anything\?再按回车键。

    2. 精确查找字符串

        在vi中可以通过在字符串中加入如下特殊字符,从而使得查找更加精确。
        匹配行首,字符串要以^开头
        匹配行尾,字符串要以$结束
        匹配词首,字符串的串首键入\<
        匹配词尾,字符串的串尾键入\>
        匹配任意字符,字符串的要匹配的位置键入一个点(.)
        例如,
        要查找一个以search为行首的行,则键入/^search ,要查找一个以search为行尾的行,则键入/search$。

    3. 替换一个字符串

       替换字符串是以查找为基础,所有用于查找的特殊匹配字符都可以用于查找和替换。替换时要指定替换的范围(1,n),1和n指行号,n为$时指最后一行。s是替换命令,g代表全程替换。例如,

       :l,$s/patternl/pattern2/g——将行l至结尾的文字,patternl的字符串改为pattern2的字符串,如无g则仅更换每一行所匹配的第一个字符串,如有g则将每一个字符串均做更换。

  • 相关阅读:
    P3619 魔法
    【HAOI2014】遥感监测
    cdcq的独立博客上线辣!-> http://cdcq.coding.me/blog/
    重复型图床
    【BZOJ1213】高精度开根
    前后端技术
    【HAOI2011】problem b
    【HAOI2011】problem a
    【BZOJ4553】【TJOI2016】【HEOI2016】序列
    【HAOI2015】 T1
  • 原文地址:https://www.cnblogs.com/PegasusWang/p/2951972.html
Copyright © 2011-2022 走看看