大量のファイルを置換するならTextSS.netがおすすめ


投稿日:2013年6月30日
  • 0
  • 0



なんとも気持ちのよい正規表現による一括置換

textssnet

管理をしているアクアリウムWikiではページごとに異なるdescriptionを設定していました。しかし、検索エンジンが高度化した現在、keywordも含め、descriptionを設定するメリットはほとんどありません。

そこでほとんどのページに書かれている、descriptionの記述を削除することにしました。

アクアリウムWikiは現在3000ものページがあるため、1つ1つ修正するのは手間がかかります。そこで以前紹介したTextSS.netを利用して、正規表現で一括置換を行いました。

今回変更する点

1つ目は「#description(~)」の範囲を削除

」の部分がファイルごとに異なるため、一致した場合に削除という方法は使えません。

2つ目は上の部分を削除したことにって発生するファイル先頭の不要な改行を削除

ファイル中の改行は見やすくするために必要なため、ファイル先頭の改行だけを削除する必要があります。


TextSS.netで正規表現を利用して置換する方法

1.置換するファイルの保存されたフォルダを選択

まず置換するファイルの保存されているフォルダを選択します。
(サブフォルダにも対応しています)

textssnet01

続いて「次へ」ボタンをクリック。

textssnet02

2.置換方法と検索パターンの設定

置換方法で「文字列の置換(正規表現)」を選択、上の検索パターンに「#description(.*)」と入力。「置換パターン」は空欄のままで、「次へ」ボタンをクリック。

ここでは正規表現の詳しい解説はしませんが、「.*」は任意の文字の繰り返しという意味です。つまり、「#description(」で始まって間に何かしらの文言があり、「)」で終わるパターン。という意味になります。(「)」が文言の中にある場合は行末を表す「$」を追記して#description(.*$)とする必要があります)

textssnet03

3.実行する方法を選択

置換結果の保存」で「保存する」を選択。「置換候補の確認」にて「表示しない」を選択。
開始」ボタンをクリック。開始してよろしいですか?というダイアログが出るのでOKをクリック。

textssnet04

以上で置換処理ができます。
置換が完了したファイルは以下のように青文字で表示されます。

textssnet05

わずか数10秒3000あまりのファイルを置換できました。

4.同じようにファイルの先頭にある不要な改行を削除

同じように「文字列の置換(正規表現)」を選択して「¥A¥n*」と入力して「置換パターン」は空欄のままで、「次へ」ボタンをクリック。
¥A」はファイルの先頭を意味し、「¥n」は改行コードで、「*」は前の文字の繰り返しです。つまりファイルの先頭に改行がある場合は、改行を全て削除する。という指定になります。

わずか2度の設定で「#description(~)」の範囲を削除して、ファイル先頭の不要な改行を削除できました。

実行のテストを行ったり、忘れがちな正規表現を保存しておくこともできます。

このようにTextSS.netは非常に多機能かつ高速で動作するので、大量のファイルを処理する方におすすめです。


現在のページを共有する



現在のページに関連する記事

複数のファイルを一括で変更したい 複数のファイルを一括で変更したい
PukiWikiの注釈 PukiWikiの注釈
大量のファイルを置換するならTextSS.netがおすすめ 知っているようで知らない秀丸の便利機能
大量のファイルを置換するならTextSS.netがおすすめ Google Fontsの日本語フォント「Noto Fonts」の使い方
大量のファイルを置換するならTextSS.netがおすすめ 文章作成を10倍楽にする方法!秀丸エディタの使えるマクロ10個まとめ
大量のファイルを置換するならTextSS.netがおすすめ 貼るだけ簡単!アクセスが倍増するWordPress用OGPコード
大量のファイルを置換するならTextSS.netがおすすめ 初めてでも理解できるようになる「Firefox機能拡張の開発」

おすすめの記事

Apacheのmod_deflateでコンテンツを圧縮してサイトを高速化する方法

Apacheのmod_deflateでコンテンツを圧縮してサイトを高速化する…

ページ編集の手間を劇的に減らす、Custom Field Templateでカスタムフィールドを作る方法

ページ編集の手間を劇的に減らす、Custom Field Templateでカス…

誤って削除したGoogle Chromeのブックマークを復元する方法

誤って削除したGoogle Chromeのブックマークを復元する方法

NexusFontが重い場合はWindows Font Cache Serviceを無効にしよう

NexusFontが重い場合はWindows Font Cache Serviceを無効にしよう

Google Fontsの日本語フォント「Noto Fonts」の使い方

Google Fontsの日本語フォント「Noto Fonts」の使い方

W3 Total Cacheの設定を通して学ぶ、WordPressを高速化するキャッシュの仕組み

W3 Total Cacheの設定を通して学ぶ、WordPressを高速化するキャ…

fluentdとNorikraでDoS攻撃を遮断し、メールで通知する方法

fluentdとNorikraでDoS攻撃を遮断し、メールで通知する方法

Google Feed APIの代替手段としてjQueryだけでRSSを表示する方法

Google Feed APIの代替手段としてjQueryだけでRSSを表示する方法


コメントを残す

コメントは認証制のため、すぐには反映されません。

プログラミングに関する質問は「日本語でプログラミングの悩みを解決するQ&Aサイト sukegra」をご利用ください。