Подтвердить что ты не робот

Регулярные выражения: поиск в списке

Я хочу фильтровать строки в списке на основе регулярного выражения.

Есть ли что-то лучше, чем [x for x in list if r.match(x)]?

4b9b3361

Ответ 1

filter(r.match, list)

Ответ 2

Полный пример:

import re
mylist = ["dog", "cat", "wildcat", "thundercat", "cow", "hooo"]
r = re.compile(".*cat")
newlist = filter(r.match, mylist)
print str(newlist)

Печать

['cat', 'wildcat', 'thundercat']