Вы можете использовать регулярное выражение, которое не содержит слова. Также вы можете использовать $options => i
для нечувствительного поиска.
Не содержит string
db.collection.find({name:{'$regex' : '^((?!string).)*$', '$options' : 'i'}})
Без учета регистра string
db.collection.find({name:{'$regex' : '^string$', '$options' : 'i'}})
Начинается с string
db.collection.find({name:{'$regex' : '^string', '$options' : 'i'}})
Заканчивается на string
db.collection.find({name:{'$regex' : 'string$', '$options' : 'i'}})
Содержит string
db.collection.find({name:{'$regex' : 'string', '$options' : 'i'}})
Сохраните это как закладку и ссылку для любых других изменений, которые могут вам понадобиться.
http://www.cheatography.com/davechild/cheat-sheets/regular-expressions/
$not
и$regex
оператор в комбинации , кажется, работает для меня.