仓酷云

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 586|回复: 8
打印 上一主题 下一主题

[CentOS(社区)] 给大家带来vim里查找交换小结

[复制链接]
山那边是海 该用户已被删除
跳转到指定楼层
楼主
发表于 2015-1-14 21:18:32 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
如果您觉得本篇CentOSLinux教程讲得好,请记得点击右边漂浮的分享程序,把好文章分享给你的小伙伴们!VI/VIM是步伐员最经常使用的工具之一,特别是unix/linux上;而查找交换也是最频仍的操纵之一。
一样平常在vim中我们利用如许的***往交换:%s/dest/new/g,个中dest是查找方针,new是交换的新内容,g暗示全文交换,一样平常的vim设置为默许全文交换,以是g也能够不要。
下文总结了经常使用的一些交换形式,以供参考进修;内容转自收集,原文没有出处信息!
VIM中经常使用的交换形式总结。

0,:g/null/d
找到null的行而且删失落

1,复杂交换表达式
交换下令能够在全文顶用一个单词交换另外一个单词:
:%s/four/4/g
“%”局限前缀暗示在一切行中实行交换。最初的“g”标志暗示交换行中的一切婚配点。假如仅仅对以后行举行操纵,那末只需往失落%便可
假如你有一个象“thirtyfour”如许的单词,下面的下令会堕落。这类情形下,这个单词会被交换成”thirty4″。要办理这个成绩,用“<”来指定婚配单词开首:
:%s/<four/4/g
明显,如许在处置“fourty”的时分仍是会堕落。用“>”来办理这个成绩:
:%s/<four>/4/g
假如你在编码,你大概只想交换正文中的“four”,而保存代码中的。因为这很难指定,能够在交换下令中加一个“c”标志,如许,Vim会在每次交换条件示你:
:%s/<four>/4/gc
2,删除过剩的空格
要删除这些每行前面过剩的空格,能够实行以下下令:
:%s/s+$//
下令后面指明局限是“%”,以是这会感化于全部文件。”substitute”下令的婚配形式是
“s+$”。这暗示行末($)前的一个大概多个(+)空格(s)。交换下令的“to”部分是空的:”//”。如许就会删除那些婚配的空缺字符。
3,婚配反复性形式
星号项“*”划定在它后面的项能够反复恣意次。因而:
/a*
婚配“a”,”aa”,”aaa”,等等。但也婚配“”(空字串),由于零次也包括在内。星号“*”仅仅使用于谁人紧邻在它后面的项。因而“ab*”婚配“a”,”ab”,”abb”,”abbb”,等等。如要屡次反复全部字符串,那末该字符串必需被构成一个项。构成一项的***就是在它后面加“(”,前面加“)”。因而这个下令:
/(ab)*
婚配:“ab”,”abab”,”ababab”,等等。并且也婚配“”。
要制止婚配空字串,利用“+”。这暗示后面一项能够被婚配一次或屡次。
/ab+
婚配“ab”,”abb”,”abbb”,等等。它不婚配前面没有跟从“b”的“a”。
要婚配一个可选项,用“=”。比方:
/folders=
婚配“folder”和“folders”。

4,指定反复次数
要婚配某一项的特定次数反复,利用“{n,m}”如许的情势。个中“n”和“m”都是数字。在它后面的谁人项将被反复“n”到“m”次(|inclusive|包括“n”和“m”)。比方:
/ab{3,5}
婚配“abbb”,”abbbb”和“abbbbb”。
当“n”省略时,被默许为零。当“m”省略时,被默许为无穷年夜。当“,m”省略时,就暗示反复恰好“n”次。比方:
形式婚配次数
{,4}0,1,2,3或4
{3,}3,4,5,等等
{0,1}0或1,同=
{0,}0或更多,同*
{1,}1或更多,同+
{3}3
5,多选一婚配
在一个查找形式中,”或”运算符是“|”。比方:
/foo|bar
这个下令婚配了“foo”或“bar”。更多的决定能够连在前面:
/one|two|three
婚配“one”,”two”或“three”。
如要婚配其屡次反复,那末全部决定布局须置于“(”和“)”之间:
/(foo|bar)+
这个下令婚配“foo”,”foobar”,”foofoo”,”barfoobar”,等等。
再举个例子:
/end(if|while|for)
这个下令婚配“endif”,”endwhile”和“endfor”
如果您觉得本篇CentOSLinux教程讲得好,请记得点击右边漂浮的分享程序,把好文章分享给你的好朋友们!
精灵巫婆 该用户已被删除
沙发
发表于 2015-1-17 10:38:33 | 只看该作者
不同于Windows?系统需要花钱购买,因为Linux的核心是免费的,自由使用的,核心源代码是开放的。
谁可相欹 该用户已被删除
板凳
发表于 2015-1-25 07:39:26 | 只看该作者
学习Linux应具备的。[书籍+网络资源]
蒙在股里 该用户已被删除
地板
发表于 2015-2-2 21:15:49 | 只看该作者
其实当你安装了一个完整的Linux系统后其中已经包含了一个强大的帮助,只是可能你还没有发现和使用它们的技巧。
深爱那片海 该用户已被删除
5#
发表于 2015-2-8 07:28:40 | 只看该作者
和私有操作系统不同,各个Linux的发行版本的技术支持时间都较短,这对于Linux初学者是往往不够的。
再现理想 该用户已被删除
6#
发表于 2015-2-25 04:43:49 | 只看该作者
任何一个叫做操作系统的东西都是这样子构成的:内核+用户界面+一般应用程序。
金色的骷髅 该用户已被删除
7#
发表于 2015-3-7 19:34:59 | 只看该作者
Linux简单,占内存少,特别是对于程序开发人员来说很方便,如果说windows的成功在于其方便用户的窗口管理界面。
爱飞 该用户已被删除
8#
发表于 2015-3-15 16:25:35 | 只看该作者
虽然大家都比较喜欢漂亮的mm,但是在学 linux 的过程中,还是要多和“男人”接触一下:P 遇到问题的时候,出来看说和上网查之外,就是要多用 linux 下的 man 命令找找帮助。
若天明 该用户已被删除
9#
发表于 2015-3-22 03:25:37 | 只看该作者
对于英语不是很好的读者红旗 Linux、中标Linux这些中文版本比较适合。现在一些Linux网站有一些Linux版本的免费下载,这里要说的是并不适合Linux初学者。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|仓酷云 鄂ICP备14007578号-2

GMT+8, 2024-11-16 09:25

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表