我想在如下给出的字符串中找到两个子字符串的索引:
find_start = '1L'
find_end = 'L'
>>> blah = 'A1LELST5W'
>>> blah.index('1L')
1
>>> blah.index('L')
2 # i want it to give me 4
如果我使用索引方法,它会给出字符串中的第三个字符“L”。但我希望它将“1L”和“L”视为单独的字符串,并给我第五个字符。
有没有简单的方法可以做到这一点?或者我是否必须将除 find_start
之外的所有内容存储在新字符串中,然后尝试通过该字符串进行索引? (但这会扰乱字符串内所有内容的位置)。
最佳答案
str.index方法具有 start 和 end 参数,允许您限制搜索。因此,您只需在第一个搜索结束的地方开始第二个搜索:
>>> find_start = '1L'
>>> find_end = 'L'
>>> blah = 'A1LELST5W'
>>> first = blah.index('1L')
>>> first
1
>>> blah.index('L', first + len(find_start))
4
关于python - 查找两个具有重叠字符的子字符串的索引,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47187105/