2013-11-26 67 views
1

如何使用python regexp或类似的方法从字符串中删除最后一个数字: 我有一个IP地址10.121.100.200,并希望只显示10.121.100.而省略最后一个数字。python regexp从字符串中删除最后一个数字

+1

后的最后'所有数字.'? – adil

+0

你最后需要尾巴“。”还是只是一个句号? –

回答

3
>>> v = '10.121.100.200' 
>>> ".".join(v.split('.')[0:-1]) 
'10.121.100' 

如果你想离开最后的小圆点末,则:

>>> ".".join(v.split('.')[0:-1]) + '.' 
'10.121.100.' 

只要将它重构为一个函数,你是好去。

+0

他希望在最后一点。你应该添加这个,但不错的解决方案 –

+0

@Dlotan你确定这不仅仅是一个句号? –

+0

嗯可能是可能的,但idk。 –

8

正则表达式:

re.sub(r'\d+$', '', ip) 

没有正则表达式

''.join(ip.rpartition('.')[:2]) 
+0

很好的答案。 Upvoted :) –

+0

使用're' +1 – adil

1

另一个版本

'{}.'.format('10.121.100.200'.rsplit('.', 1)[0]) 
'10.121.100.' 
相关问题