【发布时间】:2014-01-29 20:35:40
【问题描述】:
所以我知道 str.index(substring, begin, end=len(str)) 返回从 begin 开始的子字符串的第一个索引。有没有比简单地将开始索引更改为最后一次出现的索引+目标字符串的长度更好(更快,更清洁)的方法来获取字符串的下一个索引?即(这是我正在运行的代码)
full_string = "the thing is the thingthe thing that was the thing that did something to the thing."
target_string = "the thing"
count = full_string.count(target_string)
print 'Count:', count
indexes = []
if (count > 0):
indexes.append(full_string.index(target_string))
i = 1
while (i < count):
start_index = indexes[len(indexes) - 1] + len(target_string)
current_index = full_string.index(target_string, start_index)
indexes.append(current_index)
i = i + 1
print 'Indexes:', indexes
输出:
Count: 5
Indexes: [0, 13, 22, 41, 73]
【问题讨论】:
标签: python string python-2.7 indexing