stringtranslate.com

Recorte (programación informática)

En programación informática , recortar ( trim ) o quitar ( strip ) es una manipulación de cadenas en la que se eliminan los espacios iniciales y finales de una cadena .

Por ejemplo, la cadena (encerrada entre apóstrofos)

'Esto es una prueba'

se cambiaría, después del recorte, a

'esto es una prueba'

Variantes

Recorte a la izquierda o a la derecha

Las variantes más populares de la función trim eliminan únicamente el principio o el final de la cadena. Normalmente se denominan ltrim y rtrim respectivamente, o en el caso de Python: lstrip y rstrip . C# utiliza TrimStart y TrimEnd , y Common Lisp string-left-trim y string-right-trim . Pascal y Java no tienen estas variantes integradas, aunque Object Pascal (Delphi) tiene las funciones TrimLeft y TrimRight . [1]

Parametrización de listas de caracteres de espacio en blanco

Muchas funciones de recorte tienen un parámetro opcional para especificar una lista de caracteres a recortar, en lugar de los caracteres de espacio en blanco predeterminados. Por ejemplo, PHP y Python permiten este parámetro opcional, mientras que Pascal y Java no. Con string-trimla función de Common Lisp, el parámetro (llamado character-bag ) es obligatorio. La biblioteca Boost de C++ define caracteres de espacio según la configuración regional , además de ofrecer variantes con un parámetro de predicado (un functor ) para seleccionar qué caracteres se recortan.

Valor de retorno de cadena vacía especial

Una variante poco común de trim devuelve un resultado especial si no quedan caracteres después de la operación de recorte. Por ejemplo, StringUtils de Apache Jakarta tiene una función llamada que devuelve una cadena vacía en lugar de una cadena vacía.stripToNullnull

Normalización espacial

La normalización de espacios es una manipulación de cadenas relacionada en la que, además de eliminar los espacios en blanco circundantes, cualquier secuencia de caracteres de espacio en blanco dentro de la cadena se reemplaza por un solo espacio. La normalización de espacios se realiza mediante la función nombrada Trim()en aplicaciones de hojas de cálculo (incluidas Excel , Calc , Gnumeric y Google Docs ) y mediante la normalize-space()función en XSLT y XPath .

Recorte en el lugar

Si bien la mayoría de los algoritmos devuelven una cadena nueva (recortada), algunos modifican la cadena original en el lugar . En particular, la biblioteca Boost permite que se devuelva tanto el recorte en el lugar como una copia recortada.

Definición de espacio en blanco

Los caracteres que se consideran espacios en blanco varían entre los lenguajes de programación y las implementaciones. Por ejemplo, C tradicionalmente solo cuenta los caracteres de espacio, tabulación, avance de línea y retorno de carro, mientras que los lenguajes que admiten Unicode suelen incluir todos los caracteres de espacio Unicode. Algunas implementaciones también incluyen códigos de control ASCII (caracteres no imprimibles) junto con caracteres de espacio en blanco.

El método de recorte de Java considera los espacios ASCII y los códigos de control como espacios en blanco, a diferencia del isWhitespace()método Java, [2] que reconoce todos los caracteres de espacio Unicode.

La función Trim de Delphi considera que los caracteres U+0000 (NULL) a U+0020 (SPACE) son espacios en blanco.

Espacios en blanco sin espacio

El bloque Unicode Patrones Braille contiene U+2800 PATRÓN BRAILLE EN BLANCO , un patrón Braille sin puntos en relieve. El estándar Unicode establece explícitamente que no actúa como espacio.

El espacio sin separación U+00A0 NO-BREAK SPACE (  ,   ) también se puede tratar como espacio sin separación para fines de recorte.  

Uso

Referencias

  1. ^ "Trim". Freepascal.org. 2013-02-02 . Consultado el 2013-08-24 .
  2. ^ "Carácter (Java 2 Platform SE 5.0)". Java.sun.com . Consultado el 24 de agosto de 2013 .

Enlaces externos