我有一个字符串:
v = "1 - 5 of 5"
我只想在'of'之后的部分(上面的5)并在'of'之前删除所有内容,包括'of'?
问题是字符串没有固定,因为它可能是'1-100 of 100',所以我不能指定在10个左右的字符后去除所有内容。我需要搜索'of'然后去掉所有东西。
答案 0 :(得分:7)
对于这些情况,使用partition方法最具可读性。
string = "1 - 5 of 5"
first_part, middle, last_part = string.partition('of')
result = last_part.strip()
答案 1 :(得分:4)
str.partition()
就是针对这类问题而构建的:
In [2]: v = "1 - 5 of 5"
In [3]: v.partition('of')
Out[3]: ('1 - 5 ', 'of', ' 5')
In [4]: v.partition('of')[-1]
Out[4]: ' 5'
答案 2 :(得分:0)
In [19]: v[v.rfind('of')+2:]
Out[19]: ' 5'
答案 3 :(得分:-1)
p = find(v, "of")
在v
中为您提供“of”的位置