¿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"

pedram
fuente

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).

Mau
fuente
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.

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

trimmed es ahora "Hello"

adamse
fuente
13

usa la String.Trim()función

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

Console.WriteLine(bar); // writes "hello"
Adam Robinson
fuente
10

String.TrimMétodo de uso

jwaliszko
fuente
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.

tdammers
fuente