Рубрики
Без рубрики

Регулярные выражения в Python

Регулярные выражения – это контактная точка, которую вы найдете в большинстве языков программирования, и наступит Ti … Tagged с Python.

Регулярные выражения – это контактная точка, которую вы найдете в большинстве языков программирования, и в жизни вашего разработчика будет время.

Сегодня я собираюсь проверить, как они работают в Python.

Прежде чем мы сможем использовать регулярные выражения в Python, мы должны импортировать модуль. Он поставляется со стандартным пакетом, поэтому установка PIP не требуется.

import re

Есть несколько функций, которые мы можем использовать для регулярных выражений, и они есть:

  • Findall : Вернуть список всех совпадений
  • поиск : Вернуть объект сопоставления, если есть совпадение
  • Сплит : Вернуть список разделенных матчей
  • sub : Заменить один или несколько совпадений на строку

Тогда есть целый набор символов и последовательностей, в которые я не буду глубже погружаться. Я бы настоятельно предложил посмотреть на инструмент регуляции, такой как Pythex Анкет

Поиск всех результатов

Начнем с рассмотрения Findall функция и как это работает.

import re

string = "he was close to hearing the rain"
x = re.findall("he", string)
print(x)

Этот пример будет искать все случаи он и вернет список, в котором говорится:

['he', 'he', 'he']
# he, hearing, the

Это вернет пустой список, если ничего не найдено.

Функция поиска регулярного выражения Python

Еще одним отличным дополнением является поиск регулярных выражений. Давайте сначала посмотрим, как это работает на основе приведенного выше примера.

string = "he was close to hearing the rain"
x = re.search("he", string)
print(x)

Объект совпадения выглядит примерно так:


Мы можем использовать функции начала и конечности в этом результате, чтобы получить эту позицию так:

string = "he was close to hearing the rain"
x = re.search("\s", string)
print("he word starting on position:", x.start(), "and ending on:", x.end())

Что приведет к:

he word starting on position: 2 and ending on 3

Разделение регулярного выражения приводит к Python

Довольно распространенный подход для корпорации – разделить результаты на список. Допустим, мы хотим разбить все места в предложении:

string = "he was close to hearing the rain"
x = re.split("\s", string)
print(x)

Дает нам следующий список:

['he', 'was', 'close', 'to', 'hearing', 'the', 'rain']

Мы также можем дать количество расколов, которые мы хотим сделать, поэтому нам нужно только первое явление.

string = "he was close to hearing the rain"
x = re.split("\s", string, 1)
print(x)

Дает нам:

['he', 'was close to hearing the rain']

Замена регулярных матчей выражения в Python

То, что мы, однако, хотим сделать в некоторых случаях, так это заменить конкретные совпадения.

Допустим, мы хотим конвертировать все пространства в тире.

string = "he was close to hearing the rain"
x = re.sub("\s", '-', string)
print(x)

Даст нам следующий результат:

he-was-close-to-hearing-the-rain

Что очень полезно для имен файлов, например,!

Спасибо за чтение, и давайте подключимся!

Спасибо за чтение моего блога. Не стесняйтесь подписаться на мою рассылку электронной почты и подключиться на Facebook или Твиттер

Оригинал: “https://dev.to/dailydevtips1/regular-expressions-in-python-5ab5”