Регулярное выражение очень круто для манипуляций со строками и прочего. В python для этого предусмотрен модуль регулярных выражений.
Ниже приведены некоторые правила для создания регулярного выражения: -
^
обозначает начало строки.$
обозначает конец строки.*
обозначает ноль или более повторений повторения.+
обозначает одно или несколько повторений re..
соответствует всему, кроме новой строки.?
соответствует нулю или одному повторению re.{a}
совпадает с точным повторением re.{a, b}
соответствует повторению re в диапазоне от a до b.[]
используется для сопоставления набора символов.\
используется для экранирования специальных символов.\\
используется для соответствия\
в re.
Теперь давайте создадим регулярное выражение для простой строки, состоящей только из символов нижнего регистра:
re = "[a-z]" # matches character from a to z.
Создадим регулярное выражение для строки со следующими условиями: -
- первый символ должен быть алфавитом в нижнем регистре.
- второй символ должен находиться в диапазоне от
a
доz
или от0
до9
или:
. - тогда должна быть косая черта.
- после этого одно или несколько повторений от
a
доz
или от0
до9
. - тогда должна быть обратная косая черта.
Теперь, следуя правилам, описанным выше, регулярное выражение для верхнего условия будет
re = "[a-z]{1}[a-z0-9:]{1}/[a-z0-9]+\\"
Теперь перейдем к модулю регулярных выражений Python
import re # define a pattern to match pattern = "[a-z]" # string to check with string = "abcd" p = re.compile(pattern) result = p.match(string) # result will be none if the string is not matched
Компиляция и сопоставление также могут выполняться в одной строке с помощью
result = re.match(pattern, string)
Но в этом паттерн будет компилироваться при каждом вызове для соответствия. Если мы хотим проверить один и тот же шаблон на нескольких строках, тогда первый вариант эффективен по времени.
Это было очень простое введение в регулярное выражение.
Для получения дополнительной информации нажмите здесь