Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.
$substrCP
L'$substrCPopérateur dans Amazon DocumentDB est utilisé pour extraire une sous-chaîne d'une chaîne, la sous-chaîne étant spécifiée sous la forme d'une plage de points de code UTF-8 (CP). Cet opérateur est particulièrement utile lorsque vous travaillez avec des chaînes Unicode, car il vous permet d'extraire des sous-chaînes sans avoir à vous soucier de la représentation des caractères en octets sous-jacents.
Contrairement à l'$substrBytesopérateur, qui fonctionne sur les positions des octets, l'$substrCPopérateur travaille sur les positions des points de code. Cela facilite l'utilisation de chaînes contenant des caractères non ASCII, car le nombre de points de code peut ne pas correspondre au nombre d'octets ou de caractères.
Paramètres
-
string: chaîne d'entrée à partir de laquelle extraire la sous-chaîne. -
start: position du point de code de départ (base zéro) à partir duquel extraire la sous-chaîne. -
length: le nombre de points de code à extraire.
Exemple (MongoDB Shell)
Dans cet exemple, nous allons utiliser l'$substrCPopérateur pour extraire l'abréviation de l'État d'une chaîne contenant l'emplacement du bureau de l'employé.
Création d'exemples de documents
db.people.insert([ { "_id": 1, "first_name": "Jane", "last_name": "Doe", "Desk": "12 Main St, Minneapolis, MN 55401" }, { "_id": 2, "first_name": "John", "last_name": "Doe", "Desk": "456 Oak Rd, New Orleans, LA 70032" }, { "_id": 3, "first_name": "Steve", "last_name": "Smith", "Desk": "789 Elm Ln, Bakersfield, CA 93263" } ]);
Exemple de requête
db.people.aggregate([ { $project: { "state": { $substrCP: ["$Desk", 25, 2] } } } ]);
Sortie
{ "_id" : 1, "state" : "MN" }
{ "_id" : 2, "state" : "LA" }
{ "_id" : 3, "state" : "CA" }
Dans cet exemple, nous savons que l'abréviation de l'état commence au 25e point de code du Desk champ et comporte 2 points de code. En utilisant l'$substrCPopérateur, nous pouvons extraire l'abréviation de l'état sans avoir à nous soucier de la représentation en octets sous-jacente de la chaîne.
Exemples de code
Pour afficher un exemple de code relatif à l'utilisation de la $substrCP commande, choisissez l'onglet correspondant à la langue que vous souhaitez utiliser :