JP
/
EN

正規表現|テキストから空行・空白行を削除する

概要正規表現備考
空行
改行のみ
^$(\r\n|\r|\n)?改行コードのみの行
空白行
改行 + 空白文字
^\s*?$(\r\n|\r|\n)?改行コード、空白文字のみの行
* 空白文字 = 半角/全角スペース、タブ文字、改行コード、改ページ
空白行
改行 + 半角スペース + タブ文字
^[ \t]*?$(\r\n|\r|\n)?改行コード、半角スペース、タブ文字のみの行
空白行
改行 + 半角スペース
^ *?$(\r\n|\r|\n)?改行コード、半角スペースのみの行
空白行
改行 + タブ文字
^\t*?$(\r\n|\r|\n)?改行コード、タブ文字のみの行

テキストから空行や空白行を削除する正規表現です。

改行コードはCRLF、CR、LFのいずれでもマッチするようにしています。特定の改行コードのみを対象にしたい場合は(\r\n|\r|\n)の部分を\r\nなど任意の改行コードに置き換えてください。

なお、上記の正規表現はマルチラインモードを前提にしています。シングルラインモードの場合は行の概念がなくなってしまうのでご注意ください。

正規表現で空行・空白行を削除する例

表のいずれかの正規表現で検索し、空文字で置換することで該当行を削除できます。

例えばこんなテキストがあるとします。

aaaaaaaa\n
\n
␣␣□□\t\t\n
␣␣\t\t\n
␣␣\n
\t\t\n
bbbbbbbb\n

:半角スペース
:全角スペース
\t:タブ文字
\n:改行コード

空行(改行のみ)を消す

正規表現:^$(\r\n|\r|\n)?

aaaaaaaa\n
\n				→削除
␣␣□□\t\t\n
␣␣\t\t\n
␣␣\n
\t\t\n
bbbbbbbb\n

空白行(改行 + 空白文字)を消す

正規表現:^\s*?$(\r\n|\r|\n)?

aaaaaaaa\n
\n				→削除
␣␣□□\t\t\n	→削除
␣␣\t\t\n		→削除
␣␣\n			→削除
\t\t\n			→削除
bbbbbbbb\n

空白行(改行 + 半角スペース + タブ文字)を消す

正規表現:^[ \t]*?$(\r\n|\r|\n)?

aaaaaaaa\n
\n				→削除
␣␣□□\t\t\n
␣␣\t\t\n		→削除
␣␣\n			→削除
\t\t\n			→削除
bbbbbbbb\n

空白行(改行 + 半角スペース)を消す

正規表現:^ *?$(\r\n|\r|\n)?

aaaaaaaa\n
\n				→削除
␣␣□□\t\t\n
␣␣\t\t\n
␣␣\n			→削除
\t\t\n
bbbbbbbb\n

空白行(改行 + タブ文字)を消す

正規表現:^\t*?$(\r\n|\r|\n)?

aaaaaaaa\n
\n				→削除
␣␣□□\t\t\n
␣␣\t\t\n
␣␣\n
\t\t\n			→削除
bbbbbbbb\n