Dreamweaverの検索置換の小技

Dreamweaverの検索置換の小技

製作時のコードを書く時のアプリケーションにDreamweaverを使っています。その中で「検索置換」をよく使用するのですが、文字列に微妙な差異があって一括置換が出来なくなることが何度かありました。今回はそんな時にある事をすれば簡単に置換できる方法があるのでご紹介します。

検索置換のサンプル

下記に例をあげて順に説明していきます。

項目の内容が違う

<tabel>
<tr>
<td>りんご1個</td> /* メロン◯玉に変更 */
<td>みかん4個</td>
<td>バナナ5本</td>
<td>ぶどう2房</td>
</tr>
<tr>
<td>りんご4個</td> /* メロン◯玉に変更 */
<td>みかん7個</td>
<td>バナナ3本</td>
<td>ぶどう1房</td>
</tr>
<tr>
<td>りんご8個</td> /* メロン◯玉に変更 */
<td>みかん1個</td>
<td>バナナ9本</td>
<td>ぶどう5房</td>
</tr>
</tabel>

例えば、上記のように果物の内容と数が違うテーブルがあり、この中の「りんご◯個」を個数はそのままに「メロン◯玉」に変更したいとなった場合「一括置換」では、ちょっとした問題が出てきます。
※「◯個」の◯は数字部分です

<td>りんご◯個</td> ⇒ <td>メロン◯玉</td>

置換するにしても、「りんご◯個」と「メロン◯玉」だと「個」と「玉」の違いがありますし、「りんご」部分だけ「メロン」に置換してから「◯個」だけ選んで「◯玉」へ置換することも出来ますが、

<td>りんご1個</td>
<td>みかん1個</td> /* りんごと同じ個数 */
<td>りんご4個</td>
<td>みかん4個</td> /* りんごと同じ個数 */

同じ数字の組み合わせがある「みかん◯個」の「◯個」まで置換が掛かってしまいこの方法を取ることも出来ません。特に項目数が多い場合は手動で置換するのは大変な作業です。

そんな時に今回紹介する方法を使えば問題が一挙に片付きます。

解決方法

手順1

Dreamweaver検索置換の手順1

まず、検索置換(command?+F)ウインドウを開きます。

手順2

Dreamweaver検索置換の手順2

次に赤枠「検索」「置換」のなかにそれぞれのコードを入力します。

  • 「検索」・・・<td>りんご(.*)個</td>
  • 「置換」・・・<td>メロン$1玉</td>

【(.*)】は正規表現(文字列のグループ化)でそのまま【$1】へ中の文字列を挿入してくれます。(これで中の数字が違っても大丈夫)

<td></td>は省いても大丈夫ですが、今回はわかりやすいように記述しています。

手順3

Dreamweaver検索置換の手順3

そして赤枠の部分、チェックボックスの「正規表現を使用」にチェックして下さい。
以上の手順を行なったら「すべて置き換え」で一括置換、完了となります。

実際のDreamweaver上のコードは下記のように変換されます。

変更後

<tabel>
<tr>
<td>メロン1玉</td> /* りんご◯個からメロン◯玉に変更済 */
<td>みかん4個</td>
<td>バナナ5本</td>
<td>ぶどう2房</td>
</tr> 
<tr>
<td>メロン4玉</td> /* りんご◯個からメロン◯玉に変更済 */
<td>みかん7個</td>
<td>バナナ3本</td>
<td>ぶどう1房</td>
</tr>  
<tr>
<td>メロン8玉</td> /* りんご◯個からメロン◯玉に変更済 */
<td>みかん1個</td>
<td>バナナ9本</td>
<td>ぶどう5房</td>
</tr>
</tabel>

恐らくあまり使うことのない手法ですが、「検索置換」でこんな事もできるという無駄知識でもいいので頭の片隅のでも置いて貰えると幸いです。