Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.
$ ReplaceOne
Introducido en 5.0
El $replaceOne operador de Amazon DocumentDB es un operador de expresión de cadenas que se utiliza en las canalizaciones de agregación para reemplazar la primera aparición de una subcadena especificada dentro de una cadena por una cadena de reemplazo. Este operador distingue entre mayúsculas y minúsculas y solo reemplaza la primera coincidencia encontrada.
Parámetros
-
input: La cadena (campo) en la que se va a realizar la búsqueda. -
find: La cadena que se va a buscar en la entrada. -
replacement: La cadena que sustituirá a la primera aparición de la búsqueda en la entrada (campo).
Ejemplo (MongoDB Shell)
El siguiente ejemplo muestra cómo utilizar el $replaceOne operador dentro de una canalización de agregación para reemplazar las subcadenas en los nombres de los productos.
Cree documentos de muestra
db.products.insertMany([ { "_id":1, "productId": "PROD-0Y9GL0", "name": "Gordon's Extra Creamy Milk Chocolate - Pack of 4", "category": "Confectionery", "price": 24.99 }, { "_id":2, "productId": "PROD-Y2E9H5", "name": "Nutrition Co. - Original Corn Flakes Cereal", "category": "Breakfast Cereals", "price": 8.50 }, { "_id":3, "productId": "PROD-Z3F8K2", "name": "Gordon's Dark Chocolate (90% Cocoa) Pack - Pack of 4", "category": "Confectionery", "price": 28.99 } ]);
Ejemplo de agregación
db.products.aggregate([ { $addFields: { standardizedName: { $replaceOne: { input: "$name", find: "Pack", replacement: "Package" } } } } ]);
Salida
El resultado muestra que solo la primera vez que aparece «Pack» en cada nombre de producto se sustituyó por «Package».
[
{
_id: 1,
productId: 'PROD-0Y9GL0',
name: "Gordon's Extra Creamy Milk Chocolate - Pack of 4",
category: 'Confectionery',
price: 24.99,
standardizedName: "Gordon's Extra Creamy Milk Chocolate - Package of 4"
},
{
_id: 2,
productId: 'PROD-Y2E9H5',
name: 'Nutrition Co. - Original Corn Flakes Cereal',
category: 'Breakfast Cereals',
price: 8.5,
standardizedName: 'Nutrition Co. - Original Corn Flakes Cereal'
},
{
_id: 3,
productId: 'PROD-Z3F8K2',
name: "Gordon's Dark Chocolate (90% Cocoa) Pack - Pack of 4",
category: 'Confectionery',
price: 28.99,
standardizedName: "Gordon's Dark Chocolate (90% Cocoa) Package - Pack of 4"
}
Ejemplos de código
Para ver un ejemplo de código para usar el $replaceOne comando, selecciona la pestaña correspondiente al idioma que deseas usar: