曾经经一朋友介绍vim,自此开始了wim之路。
当然这个过程也是想当的漫长,需要你自己去不断的摸索。
有意思的是,它总会给你一些想不到的惊喜。
来看一下吧:
随便找段代码看看:
/* * @title Information.java * @description * @create 2013-11-29 上午08:41:13 By yangzhi * @package com.url */package com.url;/** * * @description * * @classname Information * @author yangzhi当然在eclipse中可以用viplugin插件模拟出vim 的效果, 同时也是支持替换操作的,包括 正则.* @date 2013-11-29 上午08:41:13 */public class Information { /** * 显示信息 * * @description * * @title show * @return void */ public void show(){ } /** * * 增加信息 * @description * * @title add * @param {String} str * @return void */ public void add(String str){ }}
:s/public/private/ 或者s/public/private/s:s/public/private/g:%s/public/private/ 或者 %s/public/private/s:%s/public/private/g:%s/^public$/private/ 或者%s/^public$/private/s:%s/^public$/private/g
s,取start的首字母,第一个s代表替换当前选中行,结尾的s表示替代每一行的第一个满足条件的。g取global的首字母,表示替换该行中的所有符合条件的字符。
而当s的前面加了%s就表示替换所有行。
:26,50s/public/private/s:26,$s/poublic/private/s:^,$s/public/private/g
可以指定需要替换的行数,也可以采用正则的方式制定行数。
正则表达式也是很久没有去学习,最近前面一段时间在使用vim ,包括项目中用到,也是看了些资料发现其实还是蛮有用的。
写两简单点的吧:
/^\w+([-\.]\w+)*@\w+([-\.]\w+)*\.\w{3,6}$//^[0-9a-zA-Z]+([-\.][0-9a-zA-Z]+)*@[0-9a-zA-Z]+([-\.][0-9A-Za-z]+)*\.[0-9a-zA-Z]{3,6}$/
验证邮箱!
\w == [0-9a-zA-z]
[-\.]表示 - 或者. 这里.需要转义。
一个[]里面只匹配一个字符。
需要匹配多个可以在后面带+ 或者 * 或者?
+ 至少存在一个
* 0 个或者多个
? 0 个或者一个
() 表示分组符
{} 表示限定前面字符的个数
呵呵,近日理解,防止忘记,故作次文!