Python. Простое сравнение с шаблоном
Для проверки строки по шаблону обычно используют регулярные выражения и модуль re
. Но иногда хочется что-нибудь попроще, пусть и не такое мощное — вроде like в SQL.
Сравнить строку или список с шаблоном поможет модуль fnmatch:
import fnmatch
journal = [
"10:00 Начался обычный день в омской ветклинике",
"10:30 Голубь Френк постучался в стеклянные двери",
"10:50 Лисица Клер поскреблась в окно",
"11:10 Попугай Питер проник через вентиляцию",
"11:11 Клер попыталась сожрать Френка и Питера",
"11:25 Осьминог Пауль всплыл в мужском туалете",
]
fnmatch.filter(journal, "*Френк*")
[ '10:30 Голубь Френк постучался в стеклянные двери',
'11:11 Клер попыталась сожрать Френка и Питера' ]
fnmatch.fnmatch("frank", "f???k")
True
Под капотом используются регулярки, так что всегда можно конвертировать шаблон в регулярное выражение:
fnmatch.translate("*Френк*")
'(?s:.*Френк.*)\\Z'
Курлык.
★ Подписывайтесь на новые заметки.