2011-12-31 6 views

risposta

42

Se stai cercando di crollare più spazi bianchi consecutivi in ​​un unico spazio, allora si può fare questo con il -replace dell'operatore:

'[  Hello,  World!  ]' -replace '\s+', ' ' 

... ritorna ...

[ Hello, World! ] 

Il primo parametro su -replace corrisponde a uno schema regular expression e il secondo parametro è il testo che sostituirà qualsiasi corrispondenza. \s corrisponderà a un carattere di spazio vuoto e + indica che corrispondono a una o più occorrenze, quindi, in altre parole, uno o più caratteri spazi bianchi adiacenti verranno sostituiti con un singolo spazio. Immettere help about_comparison_operators o vedere here per ulteriori informazioni.

+0

Grazie Mr.Bacon. Fa il lavoro per me. – Samselvaprabu

+0

L'utilizzo di Trim(), TrimStart() e/o TrimEnd() è un'opzione inequivocabilmente migliore. –

+14

In primo luogo, la mia risposta è una soluzione alternativa funzionante, quindi non vedo perché meriti un downvote. In secondo luogo, i metodi Trim *() operano specificamente all'inizio e/o alla fine di una stringa, mentre l'autore ha fornito un esempio di una stringa in cui gli spazi da rimuovere si trovano nel mezzo di una stringa, che Trim *() ignorare. – BACON