正则表达式应用一例——对多余空格的排版和调整
2010年3月26日
今天好不容易用上了VPN,大喜。我们知道,身处教育网,一个VPN最好是能自动区分教育网的IP 段和非教育网IP段以实现网络效率最大化。
我用的软件是 OpenVPN,对应还有一个Route程序,程序自带的规则是清大去年的规则,肯定跟不上时代了,还好学校信息比较公开,这里就是10年3月份的免费地址清单
用记事本打开一下自带的规则,发现是形如
1 | 8.18.55.177 0.0.0.0 255.255.255.25512.18.186.192 0.0.0.31 255.255.255.224 |
再用UltraEdit打开,发现是
1 | 8.18.55.177 0.0.0.0 255.255.255.255 |
这一不同说明,换行符采用的是UNIX换行符,(也可能是Mac,但几率比较小)
而把免费地址清单完全复制,得到
1 | 8.18.55.177 0.0.0.0 255.255.255.255 |
等等
于是把这个转换成Route的规则只有两步——
1.把多个空格转成一个空格
2.把换行符改成UNIX风格
下面是具体操作步骤
1.用UltraEdit打开,Ctrl+R进入替换 勾选正则表达式,将[ ]+
替换成
(也就是单个空格,实际无此双引号)
2.继续进入替换,正则表达式打开,将 ^p
(实际无此双引号) 替换成 ^n
保存成cernet.conf
就可以给Route使用了
简单的正则表达式应用,事半功倍。