Ich kann den SQL- Like
Operator verwenden mit pymongo
,
db.test.find({'c':{'$regex':'ttt'}})
Aber wie kann ich Not Like
Operator verwenden?
Ich habe es versucht
db.test.find({'c':{'$not':{'$regex':'ttt'}})
habe aber Fehler bekommen:
OperationFailure: $ kann keinen regulären Ausdruck haben
$not
und$regex
in Kombination für mich zu funktionieren.Antworten:
Aus den Dokumenten :
EDIT (@idbentley):
{$regex: 'ttt'}
ist im Allgemeinen gleichbedeutend mit/ttt/
in mongodb, daher würde Ihre Anfrage wie folgt lauten:EDIT2 (@KyungHoon Kim):
In Python funktioniert unten:
quelle
{$regex: 'ttt'}
ist im Allgemeinen gleichbedeutend mit/ttt/
in mongodb, so dass Ihre Anfrage werden würdedb.test.find({c: {$not: /ttt/}}
.'c':{'$not':re.compile('ttt')}
. Natürlich müssen Sie erneut importierenSie können mit Regex arbeiten, der kein Wort enthält. Sie können auch
$options => i
für den Fall einer unempfindlichen Suche verwenden.Enthält nicht
string
Genaue Groß- und Kleinschreibung wird nicht berücksichtigt
string
Beginnt mit
string
Endet mit
string
Enthält
string
Bewahren Sie dies als Lesezeichen und Referenz für andere Änderungen auf, die Sie möglicherweise benötigen. http://www.cheatography.com/davechild/cheat-sheets/regular-expressions/
quelle