このエントリーをはてなブックマークに追加


2つ以上のスペースを1つのスペースに変換する方法

2つ以上続く半角スペースを1つのスペースに変換する方法を以下に記します。


2つ以上の半角スペースを1つの半角スペースにする

replaceを使うことにより簡単に記述することができます。

以下、実際にPowerShell上で実行した例です。

PS C:\Users\sakura> "# a  b   c    d     e      #" -replace "  * ", " "
# a b c d e #

テキストファイル内のスペースを変換する場合

テキストファイルを対象とし、変換する場合は以下のようになります。
用意したテキストファイルは以下の通りです。
行頭と行末のスペースはtrimで削除しています。

  • text.txt
     a
      a b
       a   b  c
       a    b    c   d
  • 実行例
    PS C:\Users\sakura\wk> Get-Content .\text.txt | foreach { $_.trim() -replace "  * ", " " }
    a
    a b
    a b c
    a b c d

以上、PowerShellで2つ以上のスペースを1つのスペースに変換する方法でした。



トップ   編集 凍結 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2015-03-20 (金) 22:50:56