正規表現における「タブ」のマッチングです
正規表現における「タブ」
正規表現で、タブを表すには、エスケープシーケンスを利用した「\t」を使います。t はタブ(Tab)の頭文字 T なので、覚えやすかと思います。
// タブを表す正規表現
\t
少し似た表現ですが、「\v」で「垂直タブ」を意味します。こちらは、Vertical Tab の V だと思います。ただし近年、垂直タブが利用されることはまれでしょう。
// 垂直タブを表す正規表現
\v
エスケープシーケンス含むメタ文字はこちらをご覧ください:
タブを含むすべての「空白文字」のマッチング
もし、タブ、スペース、改行など、すべての空白文字とよばれる文字をマッチしたいのであれば、「\s」を利用できます。
// 空白文字を表す正規表現
\s
「空白文字」には下記の様な文字が含まれます。
- 半角スペース(全角スペースを除く)
- タブ
- 改行
- 改ページ
こちらの記事も、タブ、スペースや空白文字についてまとめていますので、ぜひご一読下さい
正規表現を使ったタブの置換
例) Vim で、タブを半角スペース2つと置換する
Vimで、タブをスペースと置換する例です。Vim なら「:set expandtab」コマンド使えばすむとは知りつつも・・・、今回は正規表現の話題なので、あえて、正規表現で置換します。
Vim における置換は、「%s:/置換前/置換後/g」です。末尾の g は「グローバル」オプションで、ファイル全体を処理対象とします。(これがない場合、最初に見つかった一度の置換で終了していまいます。)
半角スペースは特殊文字でなく、リテラルでそのまま記述できます。
// タブとスペースを置換する正規表現
%s:/\t/ /g
正規表現とタブの参考情報
正規表現の基本と、メタ文字の一覧です。
タブ(Tab)の頭文字 T は簡単に覚えられるね。