python all index of substring code example

Example 1: python find all elements of substring in string

def find_all(a_str, sub):
    start = 0
    while True:
        start = a_str.find(sub, start)
        if start == -1: return
        yield start
        start += len(sub) # use start += 1 to find overlapping matches

list(find_all('spam spam spam spam', 'spam')) # [0, 5, 10, 15]

Example 2: python get index of substring in liast

def index_containing_substring(the_list, substring):
    for i, s in enumerate(the_list):
        if substring in s:
              return i
    return -1

Example 3: python get index of substring in liast

index = [idx for idx, s in enumerate(l) if 'tiger' in s][0]

Example 4: how to find the indexes of a substring in a string in python

import re
# matches_position_start will be a list of starting index positions
matches_start = re.finditer(word.lower(), string.lower())
matches_position_start = [match.start() for match in matches_start]

# matches_position_end will be a list of ending index positions
matches_end = re.finditer(word.lower(), string.lower())
matches_position_end = [match.end() for match in matches_end]