Способы поиска и обработки текста

1. Встроенные методы строк (str)

  • str.find(substring) — возвращает индекс первого вхождения подстроки или -1, если не найдено.

  • str.index(substring) — то же, но вызывает ошибку, если подстрока не найдена.

  • str.count(substring) — считает количество вхождений подстроки.

  • str.startswith(prefix) и str.endswith(suffix) — проверяют начало и конец строки.

  • str.replace(old, new) — замена подстроки.

  • str.split(sep) — разбивает строку по разделителю.

  • str.strip() — удаляет пробелы и спецсимволы по краям.

Пример:

text = "Hello, world! Hello!"
print(text.find("world"))  # 7
print(text.count("Hello"))  # 2
print(text.startswith("Hell"))  # True

2. Регулярные выражения (модуль re)

Самый мощный и гибкий способ поиска и обработки сложных шаблонов текста.

Основные функции:

  • re.search(pattern, string) — ищет первое совпадение.

  • re.findall(pattern, string) — возвращает список всех совпадений.

  • re.match(pattern, string) — проверяет совпадение только в начале строки.

  • re.sub(pattern, repl, string) — замена по шаблону.

Пример:


3. Методы обработки текста с помощью библиотеки string

  • string содержит полезные константы и функции, например string.ascii_letters, string.punctuation для фильтрации и проверки символов.


4. Использование in для проверки вхождения подстроки


5. Пример сложной обработки

Парсинг лога с помощью регулярных выражений, фильтрация строк, подсчёт ошибок и замена:


Где применяется на практике?

  • Проверка содержимого ответов API в тестах.

  • Валидация логов и поиск ошибок.

  • Обработка и фильтрация текстовых данных в тестовых данных и отчетах.

Last updated