【開発】【正規表現】作業効率化のための正規表現集 - j-komatsu/myCheatSheet GitHub Wiki

作業効率化のための正規表現集


インデックス

  1. 空白・改行の整形
  2. 特定形式のデータ抽出
  3. コードのフォーマット整形
  4. タグや特定文字列の処理
  5. リストや番号のフォーマット変更
  6. 一括変換 (マクロ例)
  7. 特定条件下での置換
  8. 小文字を大文字にする
  9. 大文字を小文字にする
  10. すべての先頭に特定文字を挿入
  11. 複数行の文字列を昇順で並び替える
  12. 複数行の文字列を降順で並び替える
  13. 重複行をマージして昇順/降順で並び替える

1. 空白・改行の整形

目的

不要な空白や改行を一括で整理してテキストを整形する。

正規表現例

  • 連続した空白を1つにまとめる
    \s+
    置換: (空白1つ)

サンプル

元データ:

  これは    サンプル   テキストです。  

適用結果:

これは サンプル テキストです。

2. 特定形式のデータ抽出

目的

ログやCSVなどから特定のデータ形式を抽出する。

正規表現例

  • 日付形式 (YYYY-MM-DD) の抽出
    \b\d{4}-\d{2}-\d{2}\b

サンプル

元データ:

ログデータ: 2025-01-04

抽出結果:

2025-01-04

3. コードのフォーマット整形

目的

ソースコードのインデントや括弧の位置を整形して読みやすくする。

正規表現例

  • カンマの後に必ず空白を挿入
    ,(?!\s)
    置換: ,

サンプル

元データ:

function test(a,b){console.log(a+b);}

適用結果:

function test(a, b) {
    console.log(a + b);
}

4. タグや特定文字列の処理

目的

HTMLやXMLのタグを整形・削除する。

正規表現例

  • タグを全て削除
    <[^>]*>
    置換: (空白なし)

サンプル

元データ:

<p>これは<strong>重要</strong>な情報です。</p>

適用結果:

これは重要な情報です。

5. リストや番号のフォーマット変更

目的

箇条書きや番号付きリストの書式を変更する。

正規表現例

  • 番号付きリストを箇条書きに変換
    ^\d+\.\s*
    置換: \u30FB

サンプル

元データ:

1. りんご

適用結果:

・りんご

6. 一括変換 (マクロ例)

目的

複数の置換ルールを一括適用して効率化する。

マクロ例

Sub Main
    ' 連続空白を1つにまとめる
    ReplaceAll "\s+", " "

    ' 行末の空白を削除
    ReplaceAll "\s+$", ""

    ' 複数の改行を1つにまとめる
    ReplaceAll "\n{2,}", "\n"
End Sub

元データ:

  不要な空白を   整理   します。    

適用結果:

不要な空白を 整理 します。

7. 特定条件下での置換

目的

条件付きで特定の文字列を変更する。

正規表現例

  • 特定文字列が行頭にある場合のみ変更
    ^.*
    置換: 新しい文字列

サンプル

元データ:

特定文字列: データ1

適用結果:

新しい文字列

8. 小文字を大文字にする

目的

テキスト内の小文字をすべて大文字に変換する。

正規表現例

[a-z]

置換: \U&

サンプル

元データ:

hello world

適用結果:

HELLO WORLD

9. 大文字を小文字にする

目的

テキスト内の大文字をすべて小文字に変換する。

正規表現例

[A-Z]

置換: \L&

サンプル

元データ:

HELLO WORLD

適用結果:

hello world

10. すべての先頭に特定文字を挿入

目的

各行の先頭に特定の文字列を追加する。

正規表現例

^.*

置換: PREFIX &

サンプル

元データ:

Line1
Line2

適用結果:

PREFIX Line1
PREFIX Line2

11. 複数行の文字列を昇順で並び替える

目的

複数行のテキストをアルファベット順または数値順に並び替える。

方法

正規表現だけでは不可能なため、エディタの「ソート」機能を使用します。


12. 複数行の文字列を降順で並び替える

目的

複数行のテキストを逆順に並び替える。

方法

正規表現だけでは不可能なため、エディタの「逆順ソート」機能を使用します。


13. 重複行をマージして昇順/降順で並び替える

目的

重複した行を削除し、昇順または降順で並び替える。

方法

エディタの「重複を削除」機能と「ソート」機能を組み合わせて実現します。

⚠️ **GitHub.com Fallback** ⚠️