Для поиска чего-либо в строке, Python предоставляет регулярное выражение. Регулярное выражение определяет набор строк, которые ему соответствуют; это поможет вам проверить, соответствует ли указанная строка заданному регулярному выражению или re. И шаблоны, и строки для поиска могут быть строками Unicode, а также 8-битными строками.
Нахождение строки между двумя строками в Python
Чтобы найти строку между двумя другими строками в Python, используйте метод re.search(). re.search() — это встроенный метод Python, который ищет совпадение в строке и возвращает объект Match, если он находит совпадение.
Если он находит более одного совпадения, он возвращает только первое совпадение. Функция search() возвращает None, если шаблон не совпадает.
Метод re.search() останавливается после первого совпадения, что больше подходит для проверки регулярного выражения, чем для извлечения данных.
Синтаксис re.search()
|
1 |
re.search("\s", text) |
Аргументы
- «\s» — это шаблон, который мы должны искать во входной строке.
- «text» — это входная строка.
Пример
Давайте определим строку, состоящую из строк, и мы будем искать шаблон между двумя строками и возвращать соответствующий результат.
|
1 2 |
str = "krunal=21;iwanther21kb" |
Приведенная выше строка считается одной строкой, но буквально состоит из множества строк. Таким образом, мы можем представить приведенную выше строку как три разные строки и найти строку между двумя строками, используя метод re.search().
Чтобы использовать метод re.search() в Python, вы должны импортировать модуль re в начало файла.
|
1 2 3 4 5 |
import re str = "krunal=21;iwanther19kb" result = re.search('krunal=21;(.*)19kb', str) print(result.group(1)) |
Вывод:
|
1 |
iwanther |
В этом примере мы хотим найти строку между krunal=21 и строкой 19kb iwanther. Используя регулярное выражение, мы искали строку по шаблону, нашли совпадение с iwanther и вернули эту строку. Это самый эффективный способ найти строку между двумя строками в Python.
