March 26, 2010

正则表达式应用一例——对多余空格的排版和调整

今天好不容易用上了VPN,大喜。我们知道,身处教育网,一个VPN最好是能自动区分教育网的IP 段和非教育网IP段以实现网络效率最大化。


我用的软件是 OpenVPN,对应还有一个Route程序,程序自带的规则是清大去年的规则,肯定跟不上时代了,还好学校信息比较公开,这里就是10年3月份的免费地址清单

用记事本打开一下自带的规则,发现是形如
8.18.55.177 0.0.0.0 255.255.255.25512.18.186.192 0.0.0.31 255.255.255.224


再用UltraEdit打开,发现是

8.18.55.177 0.0.0.0 255.255.255.255

12.18.186.192 0.0.0.31 255.255.255.224


这一不同说明,换行符采用的是UNIX换行符,(也可能是Mac,但几率比较小)


而把免费地址清单完全复制,得到
8.18.55.177 0.0.0.0 255.255.255.255

12.18.186.192 0.0.0.31 255.255.255.224

12.26.55.108 0.0.0.0 255.255.255.255

12.26.55.139 0.0.0.0 255.255.255.255



等等


于是把这个转换成Route的规则只有两步——
1.把多个空格转成一个空格
2.把换行符改成UNIX风格

下面是具体操作步骤
1.用UltraEdit打开,Ctrl+R进入替换 勾选正则表达式,将[ ]+ 替换成 " " (也就是单个空格,实际无此双引号)
2.继续进入替换,正则表达式打开,将 " ^p"(实际无此双引号) 替换成 ^n 保存成cernet.conf 就可以给Route使用了

简单的正则表达式应用,事半功倍。

No comments:

Post a Comment

Related

Related Posts with Thumbnails