正規表現って便利! InDesign作業がグッとラクになる正規表現の使い方

DTP

はじめに:正規表現って難しそう? でも使うとすごく便利!

InDesignを使っていて、「正規表現」って聞いたことはあるけど使ったことはない…という方、多いのではないでしょうか?

正規表現は、文字のパターンを指定して検索・置換するために、特定のパターンを文字列で表現する方法です。

 

InDesignでは正規表現を使うことで、

  • ( )で囲まれた文字だけ小さくしたい
  • ※やRマークを上付にしたい
  • 価格だけ色を付けたい

など、手作業で毎回やっていた作業を一瞬で済ませることができます!

ステップ①:まずは検索・置換で試してみよう!

正規表現に初めて触れるなら、まずは「検索と置換」パネルで使ってみましょう。

使い方

  1. メニューの「編集」→「検索と置換」→「正規表現」タブを選択
  2. 「検索文字列」に正規表現を入力
  3. 「置換文字列」に置換する文字列を入力するか「置換形式」で文字スタイルを選択
  4. 検索置換を実行

試しに「半角数字の後にスペースを追加したい」というケースをやってみましょう。
通常の検索置換だと数字を一つずつ選んでスペースを追加する必要がありますが、正規表現を使えば一発で完了です!

 

検索文字列」に「\d」(\dは数字を表します)
置換文字列」に「$0 」($0は検索結果そのままを保持するという意味です。$0の後にスペースを入れることをお忘れなく)
検索置換を実行!

 

正規表現イメージ1

 

半角数字の後にスペースが挿入されました。
このように、正規表現を使えば繰り返しの作業を効率化できるんです。

ステップ②:慣れてきたら、段落スタイルに正規表現を組み込もう!

検索置換で正規表現の便利さを実感したところで、次は段落スタイルに正規表現スタイルとして組み込みましょう。
正規表現を段落スタイルに組み込むことで、ドキュメント全体に自動的にスタイルが反映されます。

 

■ まずは文字スタイルを用意しよう
正規表現スタイルは段落スタイルの一部として使われますが、実際に適用されるのは「文字スタイル」です。
そのため、事前に目的に合わせた文字スタイルを作っておく必要があります。
例えば「特定の文字だけ強調したい」というときは、「色付き太字」のような文字スタイルを作っておきます。

 

■ 以下の流れを意識してみよう

  • どんな文字に反応させたい? → 正規表現で指定
  • どう表示させたい? → 文字スタイルで指定
  • 段落スタイルの中で正規表現スタイルを設定

使い方

  1. 該当の段落スタイルを選択してダブルクリック(もしくは右上の「三」→「スタイルの編集」)
  2. 「正規表現スタイル」タブを選択
  3. 「新規正規表現スタイル」をクリック
  4. 「スタイルを適用」で文字スタイルを選択
  5. 「テキスト」に正規表現を入力して「OK」

試しに「見出しの番号部分だけを強調したい」というケースをやってみましょう。

スタイルを適用」に、事前に用意した「色付き太字
テキスト」に「^\d+\.
検索置換を実行!

 

正規表現イメージ2

 

「1.」「2.」のみ太字で強調されました。

 

ちなみに「^\d+\.」の意味は…

^:行の先頭
\d:数字(0〜9)
+:直前の文字または記号が1回以上繰り返される
\.:ピリオド(ドット)
まとめると、「行頭の1桁以上の数字の後にピリオドが付いている文字列」ということになります!

 

■ 補足
正規表現スタイルは段落スタイルを使わなくても設定することができます。その場合の設定方法はこちらです。

  1. 「段落」パネルの右上の「三」→「正規表現スタイル」
  2. 「新規正規表現スタイル」をクリック
  3. 「スタイルを適用」で文字スタイルを選択
  4. 「テキスト」に正規表現を入力して「OK」

おすすめ正規表現

具体的な使い方をいくつかご紹介します。
どれもすぐ使えて効果バツグンのパターンばかりです。
用途に応じた文字スタイルを準備したら、正規表現で検索置換してみましょう。

 

・( )で囲まれた文字だけ小さくする

(.*?)

補足はかっこ内に小さく掲載するという文字組みなどにおすすめです。
 

・価格だけ色を付ける

¥[\d,]+

¥10,000のような価格表示を強調してみましょう。
 

・Rマークと※を上付にする

Ⓡ|※

上付にならないⓇは字形が違うと判別できるという利点も。

 

・「CO2」の「2」を下付にする

(?<=CO)2

文字スタイルを上付にすれば「mm2」などに応用が利きます。

 

・TELに表記統一する

tel|Tel|電話番号

原稿によってバラツキがありがちな表記の統一に。

 

・行頭のアキを削除する

^[~( \t]+

全角、半角、半角2つ、タブ…いろんなスペースで行頭が下がった原稿を整えるのにぜひ。

 

■ こんな課題も正規表現で解決
他には、先日こんな案件がありました。
もくじのページ番号だけフォントを変更するというものです。
文字スタイルを用意したとしても、100ページを超える本のため、もくじに掲載する項目(章見出し)も多く、ひとつずつ手作業で文字スタイルを当てていくのは大変すぎる…
ということで、ここで正規表現です!

 

正規表現イメージ3

 

上図を見ると、章見出しとページ番号の間には、必ずタブが入ってますね。
今回はこれを利用しましょう。

(?<=\t)\d+

この意味は…
(?<=\t):「タブ文字の後に続く」という条件を指定する肯定の後読みです。
\d+:1つ以上の数字を意味します。
つまり、「タブ文字の後の1桁以上の数字」ですね。

 

正規表現イメージ4

 

無事に自動でページ番号のフォントを変更することができました。(ついでにタブにリーダー設定してます)
これで作業時間の大幅な短縮に成功です!

まとめ

InDesignの正規表現は少しハードルが高そうに感じるかもしれませんが、慣れてしまえばとっても便利な機能です。
特に、普段「なんとなく毎回手作業でやっている修正」がある方こそ、正規表現を試してみる価値アリです。
ぜひ自分の制作フローに取り入れて、効率&品質アップの味方にしてみてくださいね!