Join us at MongoDB.local London on 7 May to unlock new possibilities for your data. Use WEB50 to save 50%.
Register now >
Docs Menu
Docs Home
/ /

$trim (operador de expresión)

$trim

Elimina los caracteres de espacio en blanco, incluidos los nulos, o los caracteres especificados del principio y del final de una cadena.

$trim tiene la siguiente sintaxis:

{ $trim: { input: <string>, chars: <string> } }

El $trim procesa un documento con los siguientes campos:

Campo
Descripción

input

La string a recortar. El argumento puede ser cualquier valor válido expresión que se resuelve en una string. Para obtener más información sobre las expresiones, consulta Expresiones.

chars

opcional. El(los) carácter(es) a recortar de input.

El argumento puede ser cualquier expresión válida que se resuelva en una string. El operador $trim divide la cadena en puntos de códigoUTF individuales.para recortar input desde.

Si no se especifica, $trim remueve los caracteres de espacio en blanco, incluido el carácter nulo. Para la lista de caracteres de espacio, consulta Caracteres de espacio.

Tip

  • $ltrim

  • $rtrim

  • Por defecto, $trim elimina los caracteres de espacio en blanco, incluido el carácter nulo:

    Ejemplo
    Resultados

    { $trim: { input: " \n good bye \t " } }

    "good bye"

  • Puede anular los caracteres predeterminados para recortar utilizando el campo chars.

    Por ejemplo, lo siguiente elimina cualquier g y e del inicio y final de la entrada. Dado que la entrada comienza con un espacio en blanco, ningún carácter puede ser eliminado del inicio de la string.

    Ejemplo
    Resultados

    { $trim: { input: " ggggoodbyeeeee", chars: "ge" } }

    " ggggoodby"

  • Si desea anular los caracteres predeterminados para recortar, puede incluir explícitamente los caracteres de espacio en blanco para recortar en el campo chars.

    Por ejemplo, lo siguiente recorta cualquier espacio, g, e del inicio y del final de la entrada.

    Ejemplo
    Resultados

    { $trim: { input: " ggggoodbyeeeee", chars: " ge" } }

    "oodby"

Por defecto, $trim remueve los siguientes espacios en blanco, incluido el carácter nulo:

Unicode
Secuencia de escape
Descripción

U+0000

'0'

Carácter nulo

U+0020

' '

Espacio

U+0009

't'

Horizontal tab

U+000A

'n'

Alimentación de línea/nueva línea

U+000B

'v'

Pestaña vertical

U+000C

'f'

Salto de página

U+000D

'r'

Retorno de carro

U+00A0

Espacio sin salto

U+1680

Marca de espacio ogham

U+2000

En quad

U+2001

Em quad

U+2002

En space

U+2003

Em space

U+2004

Three-per-em space

U+2005

Four-per-em space

U+2006

Six-per-em space

U+2007

Espacio de figuras

U+2008

espacio de puntuación

U+2009

Espacio delgado

U+200A

Espacio para el cabello

Considere una colección inventory con los siguientes documentos:

db.inventory.insertMany( [
{ _id: 1, item: "ABC1", quarter: "13Q1", description: " product 1" },
{ _id: 2, item: "ABC2", quarter: "13Q4", description: "product 2 \n The product is in stock. \n\n " },
{ _id: 3, item: "XYZ1", quarter: "14Q2", description: null }
] )

La siguiente operación utiliza el operador $trim para remover los espacios en blanco al principio y al final del campo description:

db.inventory.aggregate([
{ $project: { item: 1, description: { $trim: { input: "$description" } } } }
])

La operación devuelve los siguientes resultados:

{ _id: 1, item: "ABC1", description: "product 1" }
{ _id: 3, item: "XYZ1", description: null }
{ _id: 2, item: "ABC2", description: "product 2 \n The product is in stock." }

Volver

$tsSecond

En esta página