¿Cómo eliminar todo el espacio en blanco desde el principio o el final de una cadena?


208

¿Cómo puedo eliminar todo el espacio en blanco desde el principio y el final de una cadena?

Al igual que:

"hello"devoluciones "hello"
"hello "devoluciones "hello"
" hello "devoluciones "hello"
" hello world "devoluciones"hello world"

Respuestas:


445

String.Trim()devuelve una cadena que es igual a la cadena de entrada con todos los espacios en blanco recortados desde el inicio y el final:

"   A String   ".Trim() -> "A String"

String.TrimStart() devuelve una cadena con espacios en blanco recortados desde el principio:

"   A String   ".TrimStart() -> "A String   "

String.TrimEnd() devuelve una cadena con espacios en blanco recortados desde el final:

"   A String   ".TrimEnd() -> "   A String"

Ninguno de los métodos modifica el objeto de cadena original.

(Al menos en algunas implementaciones, si no hay espacios en blanco para recortar, se obtiene el mismo objeto de cadena con el que comenzó:

csharp> string a = "a"; csharp> string trimmed = a.Trim(); csharp> (object) a == (object) trimmed; returns true

No sé si esto está garantizado por el idioma).


1
⁺¹ para la definición MS de espacios en blanco. Conocí un comportamiento extraño que .TrimEnd()no funciona (para el carácter de espacio sin ruptura) , pero al final es solo que el personaje no figura en la documentación.
Hola Ángel el

2
Existen numerosas formas de recortar cuerdas, y muchas están marcadas. Aún así, me gusta .Trim () como el más rápido de escribir y el más fácil de leer.

Tal vez sea útil saber esto: si tiene varias líneas como en un TextArea. Y presionas la tecla Intro, obtienes algo como: " A String \r\n " .Trim()reconoce esto como un espacio también.
Nash Carp

@NashCarp: Eso es porque \ r y \ n también son caracteres de espacio en blanco
huha

20

eche un vistazo a Trim()cuál devuelve una nueva cadena con espacios en blanco eliminados desde el principio y el final de la cadena en la que se llama.


17
string a = "   Hello   ";
string trimmed = a.Trim();

trimmed es ahora "Hello"


13

usa la String.Trim()función

string foo = "   hello ";
string bar = foo.Trim();

Console.WriteLine(bar); // writes "hello"


8

String.Trim()elimina todo el espacio en blanco desde el principio y el final de una cadena. Para eliminar espacios en blanco dentro de una cadena, o normalizar espacios en blanco, use una Expresión regular.

Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.