Puedo usar el Like
operador SQL usando pymongo
,
db.test.find({'c':{'$regex':'ttt'}})
Pero, ¿cómo puedo usar Not Like
Operator?
Lo intenté
db.test.find({'c':{'$not':{'$regex':'ttt'}})
pero obtuve un error:
OperationFailure: $ not no puede tener una expresión regular
$not
y$regex
en combinación parece funcionar para mí.Respuestas:
De los documentos :
EDITAR (@idbentley):
{$regex: 'ttt'}
es generalmente equivalente a/ttt/
en mongodb, por lo que su consulta se convertiría en:EDIT2 (@KyungHoon Kim):
En Python , debajo de uno funciona:
fuente
{$regex: 'ttt'}
generalmente es equivalente a/ttt/
en mongodb, por lo que su consulta se convertiría endb.test.find({c: {$not: /ttt/}}
.'c':{'$not':re.compile('ttt')}
. Por supuesto, necesita importar rePuede hacerlo con expresiones regulares que no contienen una palabra. Además, puede utilizar
$options => i
para el caso de búsqueda insensible.No contiene
string
No distingue entre mayúsculas y minúsculas
string
Comienza con
string
Termina con
string
Contiene
string
Conserve esto como un marcador y una referencia para cualquier otra modificación que pueda necesitar. http://www.cheatography.com/davechild/cheat-sheets/regular-expressions/
fuente