Добрый день, уважаемый читатель. В данной статье мне бы хотелось рассмотреть один из вариантов проверки строки с помощью регулярных выражений.
Регулярными выражениями в Python называются шаблоны, которые используются для поиска соответствующего фрагмента текста и сопоставления символов.
Для работы с регулярными выражениями воспользуемся модулем "re" и методом .fullmatch(pat, str) проверяем, подходит ли строка str под шаблон pat;
import re
re.fullmatch(pat, str)
В первом примере будем проверять строку на соответствие следующим наборам условий:
- длина строки 5 символов
- содержит только латинские буквы и цифры
Примеры проверки строк:
Шаблон pat будет иметь следующий вид
pat = '^[a-zA-Z0-9][a-zA-Z0-9][a-zA-Z0-9][a-zA-Z0-9][a-zA-Z0-9]$'
Символ ^ означает начало последовательности
Символ $ означает окончание последовательности
Шаблон [a-zA-Z0-9] повторяется 5 раз, в соответствии с длиной правильной строки. Каждый шаблон в квадратных скобках означает, что символ может быть латинской буквой, где регистр не имеет значение или же цифрой.
Можно укоротить шаблон до
pat = '^[a-zA-Z0-9]{5}$'
{5} указывает число повторений символа
Второй пример будет проверкой строки на соответствие номера мобильного телефона:
- Начинаться на 7 или 8
- Длина 11 символов
- Все символы цифры
Шаблон pat будет иметь следующий вид
pat = '^[7, 8]{1}[0-9]{10}$'
Благодаря тому, что мы шаблон pat вынесли в отдельную переменную, сам код программы сильно не изменился.
Ссылка на первый и второй пример на Яндекс.Диск
Спасибо за потраченное время на изучение статьи. Надеюсь, что Вы смогли найти для себя полезную информацию. С уважением, Анатолий.