MongoDb(pymongo) фильтры

Рейтинг: 1Ответов: 2Опубликовано: 25.02.2015

Ищу по коллекции все значения поля title, включающие слово "Tom":

for item in db.order.find({'title':'Tom'}):

     print item['title']

Если имеется в массиве поле title со значением 'Tom', то мы найдем это поле, но если значение поля будет 'Hello Tom', то мы не получим ничего. Вопрос состоит в том, как сделать более 'легкий' фильтр, который найдет результат, если даже значение будет sdfdsfdfsdfdTomdfdsf.

Ответы

▲ 1Принят

Можно поискать по регекспе 'Tom':

for item in db.order.find({'title': { '$regex': 'Tom' }}):
     print item['title']
▲ 0

for item in db.order.find({'descr': re.compile('Tom')}):