Mac の BBEdit (旧 TextWrangler):
正規表現、使い方、ワイルドカードなど

UB3/informatics/basics/app_textwrangler

このページの最終更新日: 2023/02/14

  1. 概要: TextWrangler とは
  2. テキストの一括置換
  3. 正規表現によるワイルドカードの使用方法

広告

概要: TextWrangler とは

TextWrangler は Mac で使える無料のテキスト編集ソフトである (1)。このページは、2019 年 3 月に TextWrangler についてまとめたものであったが、TextWrangler はのちに BBEdit というアプリに変更されている。

中身はあまり変わっていないので、ページはそのまま残してある。BBEdit を使う際の参考になるはずである。

TextWranlerのロゴ

TextWrangler/BBEdit では、

  • 2 つのファイルの差分をとる
  • フォルダ内の複数ファイルを対象に、検索、置換をする

などのことが可能である。

ちなみに wrangle は「口論する、説き伏せる」などの意味で、このソフトの名前はちょっとピンとこない。同様のことができる Windows ソフトには TextSS がある。

テキスト一括置換

Google カスタム検索と SSL の問題で、複数のファイルで以下の 1 のテキストを 2 に置換する必要が生じた。このときの手順を記録しておく。

  1. src="http://www.google.com/cse/images/google_custom_search_smwide.gif" /
  2. src="../../images/web_copyrighted/Logo_60wht.gif" width="60"

まず Apple Store で TextWrangler をダウンロード。Search から Multi-file search を選ぶと、以下のような画面が出てくる。

Find と Replace の欄に文字列を記入し、対象となるフォルダを選ぶ。今回は Other から Dropbox の中にある ub3 というフォルダを対象にする。


テキスト一括置換 BBEdit

Find All でまず確かめてみてもいいし、Replace All でいきなり置換してもいいだろう。置換が終わると、次のような画面になる。6 個のファイルの中身が置換されたことがわかる。

find 関数 を使っても同じことができるが、こっちの方が手軽でよい。

テキスト一括置換 BBEdit

正規表現によるワイルドカードの使用方法

一括置換したい部分のテキストが微妙に違っているときには、全てのパターンにマッチする文字列である ワイルドカード を使う。2019 年 1 月に コメント欄 の部分を一括置換した際の方法をまとめておく。

以下のようなタグが各ページに設定してあり、赤字の部分がページごとに異なっていた。これを複数の html ファイルから一括削除したかった。

<table border="0" cellspacing="0" cellpadding="1">
<tr>
<td>
<form method="POST" action="zpcomment_comments_ub3.php?rep=1" target="com">
<span style="font-size:18px;font-weight:100;color:#ff0000">■ </span><b>一言コメントをどうぞ!</b> (100 字まで)<br>

中略

<div id="commentv" style="font-size:13px;line-height:15px;color:#666699;width:580px;height:160px;border:1px solid #00ccff;padding:8px;overflow-y:scroll;display:none;"></div>
<iframe name="com" src="zpcomment_comments_ub3.php" id="com"

後略


TextWrangler のワイルドカードは、以下のように使う (2)。

  • ワイルドカードを使いたい行の先頭に (?s) と書く。
  • ワイルドカード部分を .*? とする (ドット・アスタリスク・ハテナ)。
  • 入力欄の下にある Grep にチェックを入れる。すると (?s) と .*? が認識され、赤字で表示される。
  • 検索するフォルダを指定するのは、上で述べた通り。あとは置換後の文字列を入れ (削除したいなら空欄) 実行するだけ。
テキスト一括置換 BBEdit

なお、このときはサーバー上にある php ファイルも一括で削除する必要があった。使っている FileZilla には検索機能もついていて便利だった。メニューバーの Server から Search remote file を選び、以下のウィンドウで検索と削除ができた。

テキスト一括置換 BBEdit

広告

References

  1. Macでフォルダごと検索 (置換) はTextWranglerが結構便利ですよ. Link.
  2. textWranglerで正規表現。Link: Last access 2019/01/21.

コメント欄

サーバー移転のため、コメント欄は一時閉鎖中です。サイドバーから「管理人への質問」へどうぞ。