2010-08-17 15 views

risposta

68

String.Trim

rimuovere tutti iniziali e finali spazi vuoti dall'oggetto stringa corrente.

Usage:

txt = txt.Trim(); 

Se questo non funziona allora molto probabile che gli "spazi" non sono spazi, ma alcuni altri non la stampa o spazio bianco carattere, forse schede. In questo caso è necessario utilizzare il metodo String.Trim che prende un array di caratteri:

char[] charsToTrim = { ' ', '\t' }; 
    string result = txt.Trim(charsToTrim); 

Source

è possibile aggiungere a questa lista, come e quando ci si imbatte più spazio come i personaggi che sono nel vostro ingresso dati. Memorizzare questo elenco di caratteri nel database o nel file di configurazione significherebbe anche che non è necessario ricostruire l'applicazione ogni volta che si incontra un nuovo personaggio da verificare.

1

Utilizzare il metodo Trim.

16

È possibile utilizzare:

  • String.TrimStart - Rimuove tutte le occorrenze leader di un insieme di caratteri specificati in una matrice dall'oggetto String corrente.
  • String.TrimEnd - Rimuove tutte le occorrenze finali di un set di caratteri specificato in una matrice dall'oggetto String corrente.
  • String.Trim - combinazione delle due funzioni sopra

Usage:

string txt = "     i am a string         "; 
char[] charsToTrim = { ' ' };  
txt = txt.Trim(charsToTrim)); // txt = "i am a string" 

EDIT:

txt = txt.Replace(" ", ""); // txt = "iamastring" 
4

Oppure si può dividere la stringa di array di stringhe, la scissione dallo spazio e quindi aggiungere ogni elemento dell'array di stringhe a vuoto stringa.
Forse questo non è il metodo migliore e più veloce, ma puoi provare, se altre risposte non sono ciò che desideri.

+0

questo funziona per la sostituzione di spazi che non sono all'inizio o alla fine della stringa. – levininja

0
static void Main() 
    { 
     // A. 
     // Example strings with multiple whitespaces. 
     string s1 = "He saw a cute\tdog."; 
     string s2 = "There\n\twas another sentence."; 

     // B. 
     // Create the Regex. 
     Regex r = new Regex(@"\s+"); 

     // C. 
     // Strip multiple spaces. 
     string s3 = r.Replace(s1, @" "); 
     Console.WriteLine(s3); 

     // D. 
     // Strip multiple spaces. 
     string s4 = r.Replace(s2, @" "); 
     Console.WriteLine(s4); 
     Console.ReadLine(); 
    } 

USCITA:

vide un simpatico cane. C'era un'altra frase. Ha visto un cane carino.

6

Realmente non capisco alcuni dei cerchi che le altre risposte stanno attraversando.

var myString = " this is my String "; 
var newstring = myString.Trim(); // results in "this is my String" 
var noSpaceString = myString.Replace(" ", ""); // results in "thisismyString"; 

Non è scienza missilistica.

-2

è possibile utilizzare

string txt = "     i am a string         "; 
txt = txt.TrimStart().TrimEnd(); 

uscita è "io sono una stringa"

+0

@john: Non c'è niente di sbagliato nel cercare di convincere la reputazione a rispondere alle vecchie domande, a patto che le risposte siano * buone *. –

+1

@NathanTuggy Infatti. Scusa se mi sono imbattuto in qualcosa che implica qualcosa di diverso da quello. Leggendo il mio commento ora sembra piuttosto piuttosto generale. Ovviamente i buoni consigli per le vecchie domande vanno bene. – john

+0

@john: Non mi aspetto una reputazione.Se hai bisogno di un assetto a sinistra qual è la soluzione? Questo è il motivo per cui accenno a questo proposito per eventuali inconvenienti. –

Problemi correlati