[正则练习] 不正确的IP地址中去掉不需要的【0】
再出个题.从下面不正确的IP地址中去掉不需要的【0】.0.0.001.00
000.000.025.205
001.01.1.0
0000100.10.01.010
0012007.20.002.1
01092.168.02.100需要得到的结果如下:
0.0.1.0
0.0.25.205
1.1.1.0
100.10.1.10
127.20.2.1
192.168.2.100$Str = _
'0.0.001.00' & @CRLF & _
'000.000.025.205' & @CRLF & _
'001.01.1.0' & @CRLF & _
'0000100.10.01.010' & @CRLF & _
'0012007.20.002.1' & @CRLF & _
'01092.168.02.100'用StringRegExpReplace替换,还是必须一次成功~
回帖时请隐藏答案.
这是我的题解:
**** Hidden Message ***** 又有好玩的了吗?试下:
**** Hidden Message ***** 我不会 来学习一下 回复 2# 3mile
又学到了一个!谢谢!! $Str = StringRegExpReplace($Str, '0{0,4}(\d{1,3})|0{0,4}', '\1')
....
来学习的.
一次搞定, 做不来... 本帖最后由 netegg 于 2011-12-8 08:23 编辑
0012007.20.002.1
01092.168.02.100
这两组明显不对呀,第一段中间的0可不一定是不需要的
如果是对的,那么
比如102.102.102.102中间的0是不是也要去掉
如果所需结果已知,倒没必要正则了,一般字符串处理就好 回复 7# netegg
本来是这样的.
00127.20.002.1
0192.168.02.100
我只是想加点难度才加个0的.
目的就是练习正则。。。
我的主题让前辈误会了{:face (270):} 回复netegg
本来是这样的.
00127.20.002.1
0192.168.02.100
我只是想加点难度才加个0的.
目的就 ...
lixiaolong 发表于 2011-12-8 08:48 http://www.autoitx.com/images/common/back.gif
这样增加难度的话其实不应该算找正确的Ip了,只能说组合成某个正确的Ip。蛋蛋所说的很对~ 回复 9# afan
以后我注意了~{:face (52):} 学习下 正需要看相关
的东西 {:face (382):}{:face (113):} 基本思路:
将所有ip按"."分解,将首位含如果某一节首位是0则去掉,制止这个节只剩下一个0或者是其他数字
但是一次去除怎么去?
只有个简单的
$Str2 = StringRegExpReplace($Str,'0+([^0])','\1') 晕哦,来看看 看看了啊。。 回复 13# jamer
'制止这个节只剩下一个0或者是其他数字'
------100.100.100.100?
页:
[1]
2