Статья Автор: Деникина Н.В., Деникин А.В.

11. Позиции и индексы (finditer)

re.finditer() — возвращает итератор с объектами Match, содержащими позиции.

s = "ABCXXDEFXXGHI"
for m in re.finditer(r'XX', s):
    print(f"Найдено '{m.group()}' на позиции {m.start()}-{m.end()}")
# Найдено 'XX' на позиции 3-5
# Найдено 'XX' на позиции 8-10

Методы объекта Match:

  • m.group() — найденная строка
  • m.group(1) — первая группа
  • m.start() — начальная позиция
  • m.end() — конечная позиция (не включая)
Печать