Метод findall на модула re

Методът findall на модула re връща списък от всички съвпадения с регулярен израз. Ако регулярните изрази са поставени в групи, то методът ще върне кортеж. В първия параметър на метода посочваме регулярния израз, който ще търсим, във втория параметър - низа за търсене. В третия незадължителен параметър може да се зададат флагове за допълнителни настройки на регулярния израз. Методът проверява всички съвпадения, търсейки ги отляво надясно.

Синтаксис

pythonimport re

re.findall(регулярен_израз, низ, [флагове])

Пример

Нека намерим всички съвпадения с регулярен израз в низа:

pythontxt = '12 43 56 ab'
res = re.findall('\d+', txt)

print(res)

Резултат от изпълнението на кода:

python['12', '43', '56']

Пример

А сега нека намерим всички съвпадения в групите на регулярния израз:

pythontxt = '12 43 56 ab'
res = re.findall('(\d)(\d)', txt)

print(res)

Резултат от изпълнението на кода:

python[('1', '2'), ('4', '3'), ('5', '6')]

Вижте също

  • метод finditer на модула re,
    който връща итератор на всички съвпадения с регулярен израз в низа
  • метод search на модула re,
    който търси първото съвпадение с регулярен израз в низа
  • метод match на модула re,
    който търси съвпадение с регулярен израз в началото на низа
  • метод fullmatch на модула re,
    който търси пълно съвпадение на низа с регулярния израз
  • метод split на модула re,
    който разделя низа на списък по указан разделител