У меня есть список строк из os.listdir()
, который выглядит следующим образом:
['foo',
'bar'
'backup_20180406'
...]
из этих записей, я хочу получить те, которые соответствуют "backup_YYYYMMDD" шаблон.Регулярное выражение для этого с именованными группами было бы
regex = r"BACKUP_(?P<date>\d+)"
Я пытаюсь создать список, который содержит только дату из вышеупомянутого (он же .group('date')
), ноЯ не могу найти способ сделать это, не разбирая строки дважды ..
res = [re.search(regex, x).group('date') for x in filter(r.match, os.listdir(folder))]
Я уверен, что мне не хватает чего-то действительно очевидного и краткого здесь, так есть ли лучший способ?