如何通过Python查找字符串中的最后一个目标字符串?

时间:2016-03-04 03:51:54

标签: python string

我们都知道如何在字符串中找到第一个目标字符串。

string.index('abc')

所以这段代码将帮助我找到'abc'出现在字符串中的第一个地方。

但是,我想知道如何找到最后一个'abc'位置。

我已经想出了一个算法,但它很愚蠢。

1. reverse whole string and 'abc'.
2. temp_Location = string.index('cba')
3. exactly_Location = len(string) - temp_Location - len('cba')

我知道这真的很傻......有人可以告诉我如何聪明地做到这一点吗?

非常感谢。 :)

2 个答案:

答案 0 :(得分:4)

使用str.rindex

s = 'abcabc'
s.rindex('abc')  # evaluates to 3

答案 1 :(得分:1)

您还可以使用Python regex library,如果需要,它将提供更多功能。

在您的情况下,您可以这样做:

import re
s = 'abcabc'
[i.start() for i in re.finditer('abc', s)][-1] #last index from all match indices