РЕПЕТИТОР математика физика информатика
Для школьников и студентов. Подтягивание пробелов. ЦЭ, ЦТ, ОГЭ, ЕГЭ.
Идет набор на ЛЕТО. Жмите для подробностей:)
421 of 687 menu

Метод extractall

Метод extractall применяется к Series через аксессор str и извлекает все совпадения с регулярным выражением из каждой строки. В отличие от метода extract, который возвращает только первое совпадение, extractall находит все вхождения. Метод возвращает DataFrame с мультииндексом, где первый уровень - исходный индекс, а второй - номер совпадения. Параметр ⁅i⁆pat⁅/i⁆ принимает строку регулярного выражения. Параметр ⁅i⁆flags⁅/i⁆ позволяет задать флаги для изменения поведения регулярного выражения.

Синтаксис

ser.str.extractall(pat, flags=0)

Пример

Давайте извлечём все цифры из каждой строки:

import pandas as pd ser = pd.Series(['a1b2c3', 'd4e5f6', 'g7h8i9']) res = ser.str.extractall(r'(\d)') print(res)

Результат выполнения кода:

0 match 0 0 1 1 2 2 3 1 0 4 1 5 2 6 2 0 7 1 8 2 9

Пример

Извлечём все группы с помощью нескольких групп захвата:

import pandas as pd ser = pd.Series(['a1b2c3', 'd4e5f6']) res = ser.str.extractall(r'(\w)(\d)') print(res)

Результат выполнения кода:

0 1 match 0 0 a 1 1 b 2 2 c 3 1 0 d 4 1 e 5 2 f 6

Пример

Найдём все слова, начинающиеся с буквы a, используя флаг ⁅i⁆re.IGNORECASE⁅/i⁆:

import pandas as pd import re ser = pd.Series(['apple Apple', 'banana apricot']) res = ser.str.extractall(r'(a\w+)', flags=re.IGNORECASE) print(res)

Результат выполнения кода:

0 match 0 0 apple 1 Apple 1 0 apricot

Пример

Если совпадений нет, то метод возвращает пустой DataFrame:

import pandas as pd ser = pd.Series(['abc', 'def', 'ghi']) res = ser.str.extractall(r'(\d)') print(res)

Результат выполнения кода:

Empty DataFrame Columns: [0] Index: []

Смотрите также

  • метод extract,
    который извлекает только первое совпадение
  • метод findall,
    который находит все совпадения в виде списка
  • метод match,
    который проверяет совпадение с начала строки
  • метод contains,
    который проверяет наличие подстроки или совпадения
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить