2013-11-26 5 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

hmm может быть возможным, но idk. –

8

Regex:

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

Без регулярных выражений

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

Отличный ответ. Upvoted :) –

+0

+1 для использования 're' – adil

1

Другой вариант

'{}.'.format('10.121.100.200'.rsplit('.', 1)[0]) 
'10.121.100.' 
Смежные вопросы