正規表現は文字列そのものでなく「段落の先頭」や「¥マークに続く」などの位置などの条件検索が出来ます。
例えば段落の先頭にナカグロを挿入するとします。
手動で入れるのは大変なこの作業も、設定は「^(.)」「(・$1)」これだけです。
これはRegXに予め設定してあるプリセット「行頭に●を追加」の「●」を「・」に変えるだけで出来てしまいます。メタ文字がわからなくても何とかイケそうですね。
また、文字列をブロック(正式にはグループ)として抜き出して、場所を入れ替えて置換することもできます。
例えば「144分の1スケール」なんてあったとして、「000分の1」を「1/000」と統一するとします。レイアウト上に無数にある数字部分の分母と分子を入れ替えつつ、「分の」を「/(スラッシュ)」するのはとても大変な作業です。
これも正規表現なら(\d+)分の(\d+)を($2/$1)とするだけです。
この辺までは正規表現の基本的な機能なので、説明が必要ない方もいらっしゃると思います。
さて、RegXでできるのは検索置換だけではありません。
検索しつつスタイルをあてたり、独自の機能で置換時に形式を置き換えることも出来てしまいます。今回はスタイルへの置換と、置換時に数字を3桁ごとにカンマをいれる「$C」をご紹介しましょう。
カタログスペックのような体裁で、以下のようなブロックがたくさんあるとします。
これを以下のような体裁にするとします。
・1行目、シリーズ名(段落スタイル適用)と商品名(文字スタイル適用)
・2行目、スケール(段落スタイル適用)。1/000と表記し、スケールをScaleに変更
・3行目、定価(段落スタイル適用)、数字を3桁区切り、金額(文字スタイル適用)、税込みを税込へ変更
このようなレイアウトだと、先に体裁を整えたダミーフォーマットを作り、テキストをコピペで貼っていくケースも多いと思われます。
しかし、RegXなら先にテキストブロックを配置しても「マッチした文字にスタイルを引っ掛ける」イメージで属性を変更していけます。
これならいちいち文字列を見ずとも、「定価」のある行は価格の段落スタイル、円の前の数字は赤太字の文字スタイル、といった具合です。
まず1行目。
続いて2行目
最後に3行目。
「円の前の数字が続く限り」というグループ2を置換時に「$C2」として戻しているので、自動的に3桁区切りのカンマが入ります。これがRegXのスペシャルな部分です。
パネルが大きいので戸惑うかもしれませんが、実際には検索置換とスタイル変更部分しか使っていません。確認のためプレビューブロックもチラ見しますが。^^
このようにフォーマットが決まっていれば、スタイル置換を使えばあっという間にできてしまいます。
こんなにあっても作業はカンタン。
↓
設定を保存することも可能(スタイル設定は含みません)なので、次回以降は呼び出してスタイルの設定をするだけです。
テキスト編集の効率が飛躍的に上がる(かも)といったことを納得していただけたでしょうか?
RegXに興味がある方はPICTRIXさんのサイトへどうぞ。