Macでテキストの検索&置換を複数セット、一気にやりたい。

文章を書き終わって、特定の文字列を一気に別の文字列に置き換える「検索置換」。

テキストエディタを使う理由の一つにもなっている、便利な機能ですよね。

ルーティンの仕事だと、いつも特定の文字列を置き換えるようなケースもあったりしませんか?

たまたまそんな書類をいくつか抱えたので、検索&置換の複数セットを一気にこなせる方法を探してみました。

一括置換ができるMacのテキストエディタ

Macにはいくつか優秀なテキストエディタがありますが、その中でも一括置換ができるエディタは(調べた範囲では)miとJeditでした。

Jeditは有料のシェアウェアなので、今回はフリーで使えるmiを使用します。
(※Jeditは確かに有料ですが、無料版も出てる模様。詳しくは後述「おまけ」で)

miはこちらから無料でダウンロードできます。
mi – テキストエディタ

miで複数の検索&置換をする方法

一括置換をするためには、まず下準備がいります。
大まかな流れは以下の通りです。

  1. 検索置換の設定ファイルを作る
  2. 文章を選択する
  3. 設定ファイルと置換方法を指定して一括置換する

以下、詳しく見ていきます。

1. 検索置換の設定ファイルを作る

まず検索語句と置換語句の指定をしなければなりません。
通常の検索置換は、検索欄と置換欄に分かれたフォームにそれぞれ入力します。

miで一括置換する場合、テキストファイルに次のように指定します。

一行目(奇数行):検索文字列
二行目(偶数行):置換文字列

ここでは例として、句読点および感嘆符等の部分で改行をするように、以下のようなファイルを作ります。

設定ファイルの例

、で改行します。

。で2回改行します。(空白行にする)

?の後で改行を2回します。

!が使われていたら、そこで2回改行します。
ただし!のあとに」が来てたら改行しません。

つまり「うっ…!」のような記述を

「うっ…!

と分割しないようにしています。

正規表現の「^」は行頭という意味で使うことが多いですが、[]の中で使うと「〜以外」という意味になります。

参考:サルにもわかる正規表現入門

2. 文章を選択する

設定ファイルを用意したら、検索&置換をかけたい部分を選択します。
文章全部なら、Command + A で一発選択できます。

3. 設定ファイルを指定して一括置換する

一括置換する画面の出し方は、メニューバーの「検索」から

検索/置換ダイアログを表示

を選びます。(画像クリックで拡大)

mi検索置換ダイアログを表示

ショートカットを使う場合は、Command + FF と、普通にコマンドFしてから更にそのままもう一回、Fを押します。
単に Command + F しただけだと、上の方に並んでるパネルの検索欄にフォーカス行っちゃうので。

検索/置換ダイアログを表示したら、まずは検索オプションを確認します。
色々とオプションがあるので、必要に応じてチェックをしたり外したりしてください。
今回は正規表現を使いますので、正規表現にチェックを入れます。
(クリックで画像拡大)

mi検索置換ダイアログ

検索オプションの必要箇所にチェックをしたら、下の「特殊な検索」にある「一括置換」ボタンをクリックして、一番最初に作った設定ファイルを指定してください。

ちょっと面倒くさいとは思いますが、一度設定ファイルを作ってしまえばあとはずーっとラクです。
Jeditだったらもっとわかりやすくてラクなのかもしれませんが、テキストエディタにお金かけてられない人はmiを使ってやってみてくださいね。

おまけ:Jeditがいつの間にか新バージョン出てフリーで使えるようになってた!

今リンク張るためにJedit公式に訪れたら、最新バージョンの「Jedit Ω」なるものが今年の8月にリリースされてたんですね!

しかも1,200円かぁ、安くなったな!!

その上その上、無料でダウンロードできてプロ仕様を使いたくなったらライセンス料を払う形式。

ただ今回ご紹介したような複数一括置換が無料版でもできるかどうかは、まだ確認してません。

あとでじっくり遊んでみよう(^^)