下の記事の続きです↓
問題のキャプションを、
数字とスペースとダーシ「─」の組み合わせに変更します。
検索と置換で、数字とダーシの位置替えできます。
検索文字列→(\d.+)(~3)(─)
置換文字列→$3$2$1
完璧ではないかもしれませんが、次回、役立つと思います。
正規表現は見よう見まね
下の記事の続きです↓
問題のキャプションを、
数字とスペースとダーシ「─」の組み合わせに変更します。
検索と置換で、数字とダーシの位置替えできます。
検索文字列→(\d.+)(~3)(─)
置換文字列→$3$2$1
完璧ではないかもしれませんが、次回、役立つと思います。
ゆっくりと正規表現を説明してみます。
検索文字列に入れる文字(呪文のようなもの)です。
下の文章の白い箇所を選択します。
縦組みだとわかりにくいので、便宜上、横にしますね。
選択するのは、「 _ 」 と「英語」です。
まず、アンダーバー「 _ 」を検索するには、
半角かっこのなかに「_ 」を入力し、(_) とします。
半角かっこを使う理由は、次回の記事で書きます。
次に英語を検索するには、
半角カッコを使い、([A-Za-z]+)とします。
[A-Za-z]は半角の大文字と小文字のアルファベットを意味します。
+ は、1つ以上という意味です。
ピリオド「.」を検索するには、
半角かっこを使い、(\.)と入力します。
ピリオド「.」の前に逆スラッシュ「\」があるのは、「.」を文字として扱うためのルールです。詳しくは、次回の記事に書きます。
ピリオド「.」をここに入力する理由も次回の記事で説明します。
これで検索文字列の完成です。
ここまで、なんとなくわかったでしょうか?
正規表現の文字列の入れ方です。
下の文中の記号 は、タブです。
タブを 右インデントタブに変換します。
検索文字列に文字列(呪文)を入れるために、
①の「@」をクリックして、
②の「タブ」をクリックすると、
③の「\t」が入力されます。
「\t」は、タブの文字列(呪文)です。
次に、置換文字列。
①の「@」をクリックして、
②の「右インデントタブ」をクリックすると、
③の「~y」が入力されます。
「~y」は、右インデントタブの文字列(呪文)です。
下の検索文字列と置換文字列になったところで、「すべてを置換」をクリックします。
「右インデントタブ」になり、文字がお尻揃えになりました。
これが、正規表現の基本です。
正規表現「+」←繰り返しの一回以上の文字列は、以下のようにして出します。
縦組みで、
・略語は全角英語で立てて
・欧文は半角英語で寝かします。
検索と置換で、「略語の半角英語」に文字スタイルをあてます。
検索文字列 → [A-Z]{2,}
文字スタイルがあたりました。
先ほどの文字スタイルの文字を全角の英数字に変換します。
変換されました。
次に、「欧文の全角英語」を半角にします。
検索と置換で
検索文字列 → [A-Z][a-z]+
※「+」の文字列の出し方は→https://design44.dtp.to/dtp/8239/
文字スタイルがあたりました。
先ほどの文字スタイルが当たった文字を半角に変換します。
変換されました。
検索と置換で、行アキを削除します。
超基本的な、検索と置換の「正規表現」の指定の仕方です。
※目次や索引のノンブルの前の点々『・・・・・(リーダー罫線)』で、「右寄せインデント」を使いました。
正規表現の呪文はたくさんあるので、これですべての指示できるわけではありませんが。
下の検索と置換では、★だけが選ばれます。
★と「あ」の文字を選択するときは、[ ] で挟みます。
★と「あ」と数字を選ぶときは、[★あ\d]
この [ ] については、「InDesign CS3 正規表現一覧」に
たとえば、正規表現「[abc]」と書いた時、文字「a」または「b」または「c」にマッチする。また、「[a-c]」と範囲を指定できる(この時の範囲はUnicode順)。さらに「[^abc]」は「abc」以外の文字にマッチする。この時、気をつけなければならないのは、[^abc]は改行文字も含んでしまうこと。「.」が改行文字を含まないことに慣れてしまうと、ついついやってしまいがちなミス。
とあります。
目次や索引の原稿のノンブルの前のアキは、不統一のことが多いです。
スペースだったり、3点リーダーだったり、タブだったり。
数もまちまち。
これを一挙に置換します。
検索と置換の正規表現は、
①タブは、\t
②全角スペースは、~(
③半角スペースは、直接半角スペースを入力します。
④…は、直接入力します。
⑤記号類はまとめて、[~(\t…]
⑥上の正規表現を ( ) で挟み、
⑦ {1,}を続けます。
よって、
一挙に置換できます。
記号類が混在していても
置換されます。
正規表現の [ ] については、
検索と置換の正規表現の解説です。
素人なので、厳密には間違っていると思うのだけど。
まず、検索文字列。
ここで検索しているのは、「スペースがひとつ以上あって、その次に数字が来るもの」です。
正規表現の呪文は、
\s → スペースを表します。
{1,} → ひとつ以上という意味です。
\d → 数字です。
数字をスペースを半角のかっこ ( ) で囲みます。
(\s){1,}(\d)
全体の意味は、
①スペースがひとつ以上あって ←ひとつめの条件
②数字がある ←ふたつめの条件
半角のかっこ ( ) で囲むことによって、ふたつの条件に順番がつきます。
この順番が、次の「置換文字列」で活きてきます。