如何在末尾拆分带有数字的字符串?

时间:2014-04-26 21:43:29

标签: python regex string

我的字符串末尾有一个数字,用一个空格与字符串的其余部分隔开,例如两个例子:

blah 45 blah 89

1. blah blah  blah blah  42

如何在Python中使用正则表达式将字符串分隔为最后一个数字和字符串的其余部分?谢谢!

3 个答案:

答案 0 :(得分:4)

使用str.rsplit

In [100]: s = 'blah 45 blah 89'

In [101]: s1, n = s.rsplit(None, 1)

In [102]: s1, n
Out[102]: ('blah 45 blah', '89')

答案 1 :(得分:2)

如果你的字符串末尾有一个数字而只想要这个数字,那么你可以使用str.rpartition()从字符串的右边进行分区。

a = '1. blah blah  blah blah 42'

b = a.rpartition(' ')

print(b)
# ('1. blah blah  blah blah', ' ', '42')

print(b[-1])
# '42'

答案 2 :(得分:2)

如果你坚持使用正则表达式,那么下面将会这样做:

import re

s='blah 45 blah 89'
print re.match(r'.*\s(.*)',s).group(1)