蛋疼的替换(纯粹是为了vim而vim)

先说了,其实很鸡肋,我也是为了多熟悉下vim的正则才这么做的

做和1号店的接口通讯的开发工作,一号店接口的数据都是以json方式给的,

要用到项目中,先要获取到json数据,然后用JavaScriptSerializer(asp.net平台)将数据转换为对象

对象类型对应的就是他们的json各个节点了~

好,实际说说操作吧,如下图显示的是接口(http://openapi.yihaodian.com/b2b2c/opendoc/orderItem.html)中提供的json中的数据节点:

我想要转换的结果是下面这样的(target):

这是典型的xml注释风格,

我就像把页面上数据复制下来,然后格式化,用来当作实体类

------

步骤:

1. 鼠标拖一下,Ctrl+C

2. 转战 vim,进入 insert 模式,Shift+Insert:把刚刚复制到的数据粘贴到vim中

3. 全局替换,命令:


%s#^\(\w\+\)\t\(\w\+\)\t.\t\n\(.\+\)#/// <summary>\r/// \3\r/// <summary>\rpublic string \1 {get;set;}

主要思路就是用了两次反向匹配,把”名称“当作属性名,把”描述“转为注释title

正则都很简单,有几点需要说明的:


1. vim中正则的反向匹配,用 \(\) 这样的方式,括号一定要加反斜线。

2. 如果要替换成换行,用 \r,如果要匹配,用 \n 这点在Windows下面表现的可能有差异,待确认,两个都试一下即可

3 # 是分隔符,也可以中默认的斜线(/),但是本例中牵扯到的斜线比较多,每个地方都转义显得很混乱。分隔符除了用 "/"、"#"外也可以用"|"、"$"、"!"等字符


转载于:https://my.oschina.net/bigtree/blog/475222

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值