スポンサーリンク

Notepad++:複数ファイル内の文字列を置換する

この記事は約3分で読めます。

Notepad++:複数ファイル内の文字列を置換する

こんにちは、さち です。

先日、複数のテキストファイル内にある特定の文字列を置換したいことがありました。例えば、4つのテキストファイル内にある「平成」という文字列を「令和」に置き換える感じ。

開いている1つのテキストファイル内での置換は何度も経験がありますが、複数ファイルをまとめて置換するのは初体験……。

テキストエディター「Notepad++」を使って実行してみようと思います。

スポンサーリンク

複数ファイル内にある文字列を置換

  1. 「sample」フォルダーに、HTMLファイル が3つ、テキストファイルが4つあります。各テキストファイルには、「平成XX年○月○日」という内容が書いてあります。
    Notepad++:複数ファイル内の文字列を置換する
  2. Notepad++ のメニュー「検索」→「ファイル内検索」と進みます。
    Notepad++:複数ファイル内の文字列を置換する
  3. 今回は、「D:\Downloads\sample」にある全ファイルの中に書かれている「平成」という文字列を「令和」に置き換えます。全ファイルを対象にする場合、「フィルタ」は未記入でもOKです(自動で「*.*」になります)。
    Notepad++:複数ファイル内の文字列を置換する
  4. いきなり置換すると失敗が怖いので、まずは「すべて検索」で一致する箇所を確認します。
    Notepad++:複数ファイル内の文字列を置換する
  5. 4つのテキストファイル(text1~4)が一致しました。一致箇所も意図どおりなので、置換して大丈夫そうですね。
    Notepad++:複数ファイル内の文字列を置換する
  6. いよいよ本番です。「ファイル内置換」をクリックします。
    Notepad++:複数ファイル内の文字列を置換する
  7. 「置換するけどいい?」というダイアログが出るので、「OK」をクリック。
    Notepad++:複数ファイル内の文字列を置換する
  8. 正しく実行されたか確認するため、改めて「ファイル内検索」を使います。「平成」では一致するものが無く、「令和」では4つのファイルが一致しました。成功ですね。
    Notepad++:複数ファイル内の文字列を置換する
正規表現をつかった置換もできます

「フィルタ」を使って対象ファイルを絞り込む

  1. 今度は、3つの HTMLファイル の方をまとめて置換してみます。
    Notepad++:複数ファイル内の文字列を置換する
  2. <meta charset="EUC-JP">」という文字列を「<meta charset="UTF-8">」に置き換えます。
    Notepad++:複数ファイル内の文字列を置換する
  3. まずは、確認のために「すべて検索」をクリック。
    Notepad++:複数ファイル内の文字列を置換する
  4. テキストファイルが1つ紛れ込んでいますね。
    Notepad++:複数ファイル内の文字列を置換する
  5. フィルタを「*.html」にします。これで拡張子が「html」のファイルだけが対象になるはずです。念のため、もう一度「すべて検索」から置換対象を確認してみます。
    Notepad++:複数ファイル内の文字列を置換する
  6. 3つの HTMLファイル だけになりました。大丈夫そうですね。
    Notepad++:複数ファイル内の文字列を置換する
  7. 「ファイル内置換」をクリックして、置換を実行します。
    Notepad++:複数ファイル内の文字列を置換する
  8. 正しく実行されたか確認するため、改めて「ファイル内検索」を使います。「<meta charset="EUC-JP">」では1つのテキストファイル、「<meta charset="UTF-8">」では3つの HTMLファイル が一致しました。HTMLファイル だけが置換されていますね。成功です
    Notepad++:複数ファイル内の文字列を置換する

コメント

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