2011-12-31 26 views
13

私は、複数の空白を削除するためにpowershellで方法を見つけようとしていました。powershellで複数の空白を削除する

しかし、私が見つけたものは、PHPでそれを行う方法です。 "Removing more than one white-space"

同様の正規表現が利用可能です。

powershellで同じことを達成するにはどうすればいいですか?

私の文字列は、一部の行は、送信元と送信先との間に複数の空白を含むことができ、このよう

Xcopy Source Desination 

です。

答えて

42

あなたは、単一のスペースに複数の連続する空白文字を折りたたむために探しているなら、あなたは-replace演算子使ってこれを行うことができます。

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

を...戻って...

[ Hello, World! ] 

-replaceの最初のパラメータは、一致するパターンがregular expressionであり、2番目のパラメータは一致するものを置き換えるテキストです。 \sは空白文字と一致し、+は1つ以上の一致と一致することを示します。つまり、1つ以上の隣接する空白文字が1つの空白文字に置き換えられます。詳細については、help about_comparison_operatorsを入力するか、hereを参照してください。

+0

Mr.Baconに感謝します。それは私の仕事です。 – Samselvaprabu

+0

Trim()、TrimStart()、TrimEnd()のいずれかを使用することは、明白な選択肢です。 –

+14

まず、私の答えは、作業の代替ソリューションですので、なぜそれがdownvoteに値するのか分かりません。第2に、Trim *()メソッドは文字列の最初と最後で動作しますが、作成者は削除するスペースが文字列の途中にある文字列の例を示しました。無視する。 – BACON