vim末行模式
1.址址定界
:start_pos[,end_pos]起始位置,结束位置
:#跳转至指定的第#行;
:.表示当前行;
:$跳转至最后一行;
:#,#指定行范围,左侧为起始行,右侧为结束行;
:#,+#指定行的范围 ,左侧为起始行绝对编号,右侧为相对左侧行号的编移量;
例如:3,+7表行从第3行开始向后移7行,总计表示8行范围;
:$-1倒数第二行;
:1,$第1行至最后一行,表示文档全部;
:%文档全部;
:/PATTERN/从光标所在处起始向文件尾部第一次被模式所匹配的行;
例如:/first/,$从光标所在位置开始匹配的第一个first至文档最后一行;
:/part1/,/part2/从光标所在处起,第一次由part1匹配到的行开始,至第一次由part2匹配到的行结束之间所有行;
同编辑命令一同使用,实现编辑操作:
d:删除;y:复制;c:修改;
w /PATCH/TO/SOMEFILE:将范围内的内容保存至指定的文件中,另存为的意思;
r /PATCH/FROM/SOMEFILE:将指定文件中的内容读取并向插入至指定位置;
例如:5r /etc/fstab 在文档第5行后面插入fstab文件内容
2.查找
/PATTERN:从当前光标所在处向文件尾部查找能够被当前模式所匹配的所有字符串;
?PATTERN:从当前光标所在处向文件首部查找能够被当前模式所匹配的所有字符串;
n:下一个查找到的匹配字符串,与命令方向相同;
N:上一个查找到匹配字符串,与命令方向相反;
3.查找并替换
s/查找的内容/替换的内容/修饰符,分隔符是可替换的,“‘/”可以替换为任意字符,如s@@@,以避免查找带"/"内容时使用转义符;
查找的内容:可使用正则表达式;
替换的内容:不能使用正则表达式,但可以引用;
引用两种方式:
1.正则表达式分组引用:如果“找查的内容”部分在模式中使用分组符号,在“替换为的内容”中使用后向引用;
例:%s@/<t\(,*\)\+/>@T\1@g
2.直接引用:直接引用“查找到的内容”,使用&符号
例:%s@/<t[[:alpha:]]\+/>@&er@g
&:直接引用查找模式中匹配到的全部文本;
修饰符:i表示查找替换时忽略大小写;g表示全局替换,默认情况查找替换只是每一行第一个被匹配到的模式,使用g后将替换一行中多次匹配到的内容;
标签:匹配,文本处理,查找,内容,引用,工具,替换,光标 来源: https://www.cnblogs.com/yangfangzhishang/p/13742892.html
本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享; 2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关; 3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关; 4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除; 5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。