Python has str.find() and str.rfind() to get the index of a substring in a string.
I'm wondering whether there is something like str.find_all() which can return all found indexes (not only the first from the beginning or the first from the end). For example:
There is no simple built-in string function that does what you're looking for, but you could use the more powerful regular expression module re:
If you want to find overlapping matches, lookahead will do that:
If you want a reverse find-all without overlaps, you can combine positive and negative lookahead into an expression like this: