Функция поиска regex finditer() в Python с примерами

Функция regex finditer() используется в Python для поиска всех совпадений в строке и возврата итератора, который возвращает соответствующие объекты.

Что такое функция поиска в регулярных выражениях в Python?

Функция finditer() в Python сопоставляет шаблон в строке и возвращает итератор, который возвращает объекты Match всех непересекающихся совпадений.

Ниже показан синтаксис функции finditer():

re.finditer(pattern, string, flags=0)

В этом синтаксисе:

  • pattern — это регулярное выражение, которое вы хотите найти в строке.
  • string — это входная строка.
  • flags — является необязательным параметром и по умолчанию равен нулю. Параметр flags принимает один или несколько флагов регулярных выражений и изменяет способ соответствия механизма регулярных выражений шаблону.

Если поиск успешен, функция finditer() возвращает итератор, возвращающий объекты Match. В противном случае метод findit() также возвращает итератор, который не возвращает объект Match.

Пример поиска с функцией finditer() в Python

В следующем примере функция finditer() используется для поиска всех гласных в строке:

import re

s = 'Readability counts.'
pattern = r'[aeoui]'

matches = re.finditer(pattern, s)
for match in matches:
    print(match)

Выход:

<re.Match object; span=(1, 2), match='e'>
<re.Match object; span=(2, 3), match='a'>
<re.Match object; span=(4, 5), match='a'>
<re.Match object; span=(6, 7), match='i'>
<re.Match object; span=(8, 9), match='i'>
<re.Match object; span=(13, 14), match='o'>
<re.Match object; span=(14, 15), match='u'>
Похожие посты
Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *