$regex - Amazon DocumentDB

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

$regex

Mit dem $regex Operator können Sie einen Abgleich mit regulären Ausdrücken für Zeichenkettenfelder durchführen. Es ist ein leistungsstarkes Tool zum Suchen und Filtern von Dokumenten, die auf komplexen Mustern basieren.

Parameter

  • regular expression: Das reguläre Ausdrucksmuster, das mit dem Feld abgeglichen werden soll.

  • $options: (optional) Stellt Optionen zur Änderung des Suchverhaltens bereit, z. B. Berücksichtigung von Groß- und Kleinschreibung, globaler Abgleich usw.

Beispiel (MongoDB Shell)

Das folgende Beispiel zeigt, wie der $regex Operator verwendet wird, um nach Dokumenten zu suchen, bei denen das Feld „Name“ einem bestimmten Muster entspricht.

Erstellen Sie Beispieldokumente

db.users.insertMany([ { name: "John Doe" }, { name: "Jane Smith" }, { name: "Alice Johnson" }, { name: "Bob Williams" }, { name: "Charlie Davis" } ]);

Beispiel für eine Abfrage

db.users.find({ name: { $regex: /^A/ } })

Ausgabe

[ { "_id" : ObjectId("..."), "name" : "Alice Johnson" } ]

Diese Abfrage gibt alle Dokumente zurück, bei denen das Feld „Name“ mit dem Buchstaben „A“ beginnt.

Codebeispiele

Um ein Codebeispiel für die Verwendung des $regex Befehls anzuzeigen, wählen Sie die Registerkarte für die Sprache, die Sie verwenden möchten:

Node.js
const { MongoClient } = require('mongodb'); async function main() { const client = await MongoClient.connect('mongodb://<username>:<password>@<cluster-endpoint>:27017/?tls=true&tlsCAFile=global-bundle.pem&replicaSet=rs0&readPreference=secondaryPreferred&retryWrites=false'); const db = client.db('test'); const collection = db.collection('users'); const results = await collection.find({ name: { $regex: /^A/ } }).toArray(); console.log(results); await client.close(); } main();
Python
from pymongo import MongoClient def main(): client = MongoClient('mongodb://<username>:<password>@<cluster-endpoint>:27017/?tls=true&tlsCAFile=global-bundle.pem&replicaSet=rs0&readPreference=secondaryPreferred&retryWrites=false') db = client['test'] collection = db['users'] results = list(collection.find({ 'name': { '$regex': '^A' } })) print(results) client.close() if __name__ == "__main__": main()