Linux学习笔记三:gvim中到跳转命令和部分正则表达式
2013-06-14 19:11
711 查看
gvim到配置中需要自定义函数、类等关键词高亮,c.vim到编写涉及到pattern到知识
看了一些,虽然可在帮助到3章、27章及pattern章中找到相应内容,但也做点笔记帮助记忆,以便日后
1、跳转命令
‘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跳转至文首
2、查找格式(正则表达式)
查找字符中,部分字符有其特殊意义
如:
"/^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"
/a.*b结合以上释义,表示以a首b尾到字符串,中间为任意长
查找时可使用\c选项忽略本次查找case,不受case影响,如:/\cHeLLo将忽略大小写进行查找,'n'和'N'分别用来正向或逆向查找
查找中使用'\|'来进行或运算,如:/end\(if\|while\|for\),匹配"endif","endwhile","endfor",相应的,使用'\&'进行与运算
[]用来匹配单个字符范围,如/[a-z]表示a~z到所有字符,/[0-9a-z]则表示所有数字和所有小写字母,[]中可进行求反,如:/"[^"]*"匹配双引号所引字符串,包括双引号,其中[^"]表示除了双引号外到所有字符,*表示重复>=0,存在一些快捷约定,如:/\a即为/[a-zA-Z],可用命令/\s查找快捷约定
'\@='与'\@!',前者功能上等同于\&,后者功能上等同于非,即与前项不等
3、光标偏移
查找后可使光标进行偏移
如:/hello/2将在查找到的hello光标下移2行
/hello后/e+n或/b+n则光标在hello后+n或前+n位置
看了一些,虽然可在帮助到3章、27章及pattern章中找到相应内容,但也做点笔记帮助记忆,以便日后
1、跳转命令
‘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跳转至文首
2、查找格式(正则表达式)
查找字符中,部分字符有其特殊意义
如:
"/^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 |
查找时可使用\c选项忽略本次查找case,不受case影响,如:/\cHeLLo将忽略大小写进行查找,'n'和'N'分别用来正向或逆向查找
查找中使用'\|'来进行或运算,如:/end\(if\|while\|for\),匹配"endif","endwhile","endfor",相应的,使用'\&'进行与运算
[]用来匹配单个字符范围,如/[a-z]表示a~z到所有字符,/[0-9a-z]则表示所有数字和所有小写字母,[]中可进行求反,如:/"[^"]*"匹配双引号所引字符串,包括双引号,其中[^"]表示除了双引号外到所有字符,*表示重复>=0,存在一些快捷约定,如:/\a即为/[a-zA-Z],可用命令/\s查找快捷约定
'\@='与'\@!',前者功能上等同于\&,后者功能上等同于非,即与前项不等
3、光标偏移
查找后可使光标进行偏移
如:/hello/2将在查找到的hello光标下移2行
/hello后/e+n或/b+n则光标在hello后+n或前+n位置
相关文章推荐
- Linux学习笔记—day2(3.13)------基本命令,通配符,正则表达式
- linux学习笔记: grep命令,正则表达式
- [linux学习笔记]第3天:变量分类,重定向,管道命令,程序执行流,文本处理类命令, 正则表达式,短路操作符
- Linux 学习笔记 -- 第三部分 学习 shell 与 shell script -- 第12章 正则表达式与文件格式化处理
- Linux学习笔记(正则表达式)
- Linux学习笔记:grep及正则表达式
- Linux基础入门(六) --学习笔记-正则表达式
- Vbird的Linux私房菜学习笔记之正则表达式-awk
- Python学习笔记 第二部分 - 正则表达式 与 爬虫小实例(抓取豆瓣电影中评分大于等于8分的影片)
- 【Linux学习笔记九】Shell编程-正则表达式
- Linux运维学习笔记-通配符及正则表达式知识总结
- Linux 学习笔记――正则表达式
- Linux系统学习之正则表达式笔记
- Linux学习笔记(8)----基础正则表达式
- 【linux学习】Linux文本操作命令及正则表达式基础
- Linux学习笔记(正则表达式-1)
- linux之正则匹配命令学习笔记
- Linux-正则表达式 学习笔记(一)
- Linux运维学习笔记之六:Linux中的文件类型、属性、正则表达式、权限体系
- Vbird的Linux私房菜学习笔记之正则表达式-sed