Введение
В данной статье рассмотрим 4 способа поиска символа или подстроки в строке на Python.
Использование оператора in
Самый простой способ поиска символа или подстроки в строке — использовать оператор in. Он возвращает значение True, если символ или подстрока присутствуют в строке, и False в противном случае.
text = "Пример текста"
substring = "текст"
if substring in text:
print("Подстрока найдена")
# Вывод: Подстрока найдена
Использование метода find()
Также для нахождения подстроки/буквы в строке можно воспользоваться регулярными выражениями, что позволяет более гибко и точно искать символы или подстроки в строке. Для использования регулярных выражений необходимо импортировать модуль модуль re:
import re
Из самого модуля re нам понадобится функция search(). Она ищет совпадения в строке, и при нахождении первого совпадения с шаблоном возвращает соответствующий индекс.
Синтаксис:
search(pattern, string)
Где:
- pattern — строка, шаблон регулярного выражения;
- string — строка для поиска.
Поиск подстроки в строке:
import re
text = "Пример текста"
pattern = r"текст"
match = re.search(pattern, text)
if match:
print(f"Подстрока найдена по индексу {match.start()}")
# Вывод: Подстрока найдена по индексу 7
Использование регулярных выражений
Ещё мы можем воспользоваться методом find(), который позволяет найти первое вхождение подстроки в строку. Он возвращает индекс первого символа найденной подстроки и -1, если подстрока не найдена.
text = "Пример текста"
substring = "текст"
index = text.find(substring)
if index != -1:
print(f"Подстрока найдена по индексу {index}")
# Вывод: Подстрока найдена по индексу 7
Использование метода index()
Метод index() очень похож на метод find(). Он также возвращает индекс первого вхождения подстроки в строку. Однако, если подстрока не найдена, метод вызовет ошибку.
text = "Пример текста"
substring = "текст"
index = text.index(substring)
if index != -1:
print(f"Подстрока найдена по индексу {index}")
# Вывод: Подстрока найдена по индексу 7
Заключение
В ходе статьи мы с Вами разобрали 4 способа поиска символа или подстроки в строке на Python. Надеюсь Вам понравилась статья, желаю удачи и успехов! 🙂
Мой Telegram канал
Мой YouTube канал
Мой курс по Python (50 видоуроков + дополнительные уроки)
Курс по созданию телеграм-ботов на Python с фреймворком Aiogram