gvim -- 跳轉命令,查找格式,正則


一、跳轉命令正則表達式

  • ‘w'單詞前進,'b'單詞後退,'e'單詞前進,‘ge’單詞後退,存在單詞詞首詞尾區別,'W''B''E''gE'將不以單詞區分,以空格區分
  • ‘$’行尾,'^'非空白行首,'0'行首
  • ‘f’/‘F’:行內快速跳轉字符(右/左),如"fa",跳轉到本行光標第一個a字符處,可加前綴表次數,如"3fa",相似命令還有't'/'T'
  • "zz"光標行居屏中,"zt"居屏頂,"zb"居屏底,區別"ZZ","ZZ"用於快速到保存退出
  • "ma"用來標記光標位置爲a位置,其中a能夠爲a~z,標記不可見,:marks查看全部標記
  • CTRL-O與CTRL-I分別爲關標前位置於後位置到跳轉,其中CTRL-I與tab鍵功能一致,:jumps查看全部跳轉標記
  • G跳轉至文末,gg跳轉至文首


二、查找格式(正則表達式)spa

查找字符中,部分字符有其特殊意義命令行

如:ci

  • "/^string"或"/string$"用來匹配行首或行尾爲string的行,而"/^string$",則匹配僅有string構成到單行
  • '.'用來作查找中任意字符的通配符,若須要做爲純字符,則需使用"\."
  • "\>"用來匹配單詞尾,"\<"則用來匹配單詞頭,在字符串上使用‘*’命令等同於/\<string\>,即匹配完整單詞,要部分匹配,字符串上使用'g*'命令
  • 查找命令行中,'*'用來匹配任意重複個數字符,如’/a*‘匹配"a","aa","aaa"等,同時還匹配任意字符,由於其a爲0個數,使用/a\+來表示至少存在1個以上'a'
  • 使用''和''組成字符項來進行'*'匹配,如/ab*
  • '\='用來匹配0或1次的重複字符,如/abb\=,則匹配"ab","abb"
  • 以上都可用指定重複次數\{n,m}來表示,如/ab\{3,5},則表示b重複爲3~5的字符串"abbb","abbbb","abbbbb"               

 

模式 匹配次數
\{,4} 0~4
\{3,} 3~無窮
\{0,1} 0或1,同\=
\{0,} 0或更多,同*
\{1,} 1或更多,同\*
\{3} 3
  • /a.*b結合以上釋義,表示以a首b尾到字符串,中間爲任意長
  • 查找時可以使用\c選項忽略本次查找case,不受case影響,如:/\cHeLLo將忽略大小寫進行查找,'n'和'N'分別用來正向或逆向查找
  • 查找中使用'\|'來進行或運算,如:/endif\|while\|for,匹配"endif","endwhile","endfor",相應的,使用'\&'進行與運算
  • []用來匹配單個字符範圍,如/[a-z]表示a~z到全部字符,/[0-9a-z]則表示全部數字和全部小寫字母,[]中可進行求反,如:/"[^"]*"匹配雙引號所引字符串,包括雙引號,其中[^"]表示除了雙引號外到全部字符,*表示重複>=0,存在一些快捷約定,如:/\a即爲/[a-zA-Z],可用命令/\s查找快捷約定
  • '\@='與'\@!',前者功能上等同於\&,後者功能上等同於非,即與前項不等


三、光標偏移字符串

查找後可以使光標進行偏移
string

如:/hello/2將在查找到的hello光標下移2行table

/hello後/e+n或/b+n則光標在hello後+n或前+n位置class

相關文章
相關標籤/搜索