正規表現のキャラクタクラスで空白文字やスペースを表す方法

linux

正規表現のキャラクタクラスで空白文字やスペースを表す方法を紹介します。

 

空白文字(スペースやタブ)は、[:blank:] で表します。

スペース、タブ、改ページは、[:space:] で表します。

 

[:blank:]と[:space:]の違いですが「info grep」コマンドの結果に記述があります。

 

[:blank:]ですが上述の通り、スペースとタブが該当します。

 

[:space:]は以下のように少し複雑になっています。

 

sed等で使用する場合、[[:blank:]]のようにする必要があるので注意してください。

 

例を見てみましょう。

まずは、kamoと123の間にスペースが1つ、123とTORAの間にスペースが2つある場合に、[:blank:]を使って@マークに変えてみます。

1つのスペースが@に、2つのスペースも@マーク2つに変わりました。

 

同じく、[:space:]を使ってみます。

1つのスペースが@に、2つのスペースが@マーク1つに変わりました。

 

 

Secured By miniOrange
タイトルとURLをコピーしました