Docs Menu
Docs Home
/ /

$strLenCP (operador de expresión)

$strLenCP

Returns the number of UTF-8 code points in the specified string.

$strLenCP tiene lo siguiente Sintaxis de expresión del operador:

{ $strLenCP: <string expression> }

El argumento puede ser cualquier expresión válida que se resuelva como string.

Si el argumento se resuelve en un valor de null o hace referencia a un campo faltante, devuelve un$strLenCP error.

Ejemplo
Resultados

{ $strLenCP: "abcde" }

5

{ $strLenCP: "Hello World!" }

12

{ $strLenCP: "cafeteria" }

9

{ $strLenCP: "cafétéria" }

9

{ $strLenCP: "" }

0

{ $strLenCP: "$€λA" }

4

{ $strLenCP: "寿司" }

2

El operador cuenta el número de puntos de $strLenCP $strLenBytes código en la cadena especificada. Este comportamiento difiere del operador, que cuenta el número de bytes de la cadena, donde cada carácter ocupa entre uno y cuatro bytes.

Cree una colección food:

db.food.insertMany( [
{ _id: 1, name: "apple" },
{ _id: 2, name: "banana" },
{ _id: 3, name: "éclair" },
{ _id: 4, name: "hamburger" },
{ _id: 5, name: "jalapeño" },
{ _id: 6, name: "pizza" },
{ _id: 7, name: "tacos" },
{ _id: 8, name: "寿司" }
] )

El siguiente ejemplo utiliza el operador $strLenCP para calcular el length de cada valor name:

db.food.aggregate( [
{
$project: {
name: 1,
length: { $strLenCP: "$name" }
}
}
] )

Ejemplo de salida:

[
{ _id: 1, name: 'apple', length: 5 },
{ _id: 2, name: 'banana', length: 6 },
{ _id: 3, name: 'éclair', length: 6 },
{ _id: 4, name: 'hamburger', length: 9 },
{ _id: 5, name: 'jalapeño', length: 8 },
{ _id: 6, name: 'pizza', length: 5 },
{ _id: 7, name: 'tacos', length: 5 },
{ _id: 8, name: '寿司', length: 2 }
]

Tip

Volver

$strLenBytes

En esta página