MongoDB
 sql >> Datenbank >  >> NoSQL >> MongoDB

So finden Sie eine Teilzeichenfolge in einem Feld in Mongodb

Statt dessen:

db.database.find({A: {$regex: '/^*(abc def)*$/''}})

Sie sollten dies tun:

db.database.find({A: /abc def/i })

^* ist keine wirklich gültige Syntax, da ^ und $ Anker sind und nicht etwas, das wiederholbar ist. Du meintest wahrscheinlich ^.* hier. Aber es gibt keine Notwendigkeit für ^.*, da dies einfach bedeutet "Alles bis zum folgenden Zeichen" und (abc def)* bedeutet "0 oder mehr mal "abc def", aber es muss am Ende der Zeichenfolge stehen, wegen deinem $. Das "i" am Ende soll Groß- und Kleinschreibung beachten.