InDesign:正規表現検索でも文字数不定の後読みできちゃうよ

って、できない仕様だということで長らく諦めてたんですけども。
長らくっていうほど正規表現歴そんなに長くもないですけど。

ちょっと前にそれがなんとかなるんだぜヤッホーという話があって、
よくわからなかったんだけどノリで「へええヤッホー」などと相槌を打ったまま、
いいだけ忘れかけておりました。
忘れきりそうなのでメモしときます。
基本的なことは書かないので、わからない人にはわからないと思いますが、
わかる人にはわかるように書いておきますね(ひどい)。
人に教えられるほどには理解しておりませんものでオホホ

肯定後読みだけを例に使いますが、否定後読みも同様です。

InDesignで段落先頭の連続した数字の直後にいる「だ」を検索したい場合、
その数字の桁数が確定していない式だと、まるでヒットしないんですね。

そんなある日(どんなだ)、InDesignSecrets.com にちょっとしたTipsがあがりまして。
Fixing Over-Extended Paragraph Borders in InDesign
内容はというと、フレームにまたがった段落の囲み罫のオフセットを制御する悪知恵。なんて言い草だい。
その中で見慣れない正規表現の演算子があり、何をつかまえようとしているのかわからなくて
調べたところ、
\h …水平空白文字
\H …非水平空白文字
\K …コレの左側の内容を保存する これは$&には含まれない

…だそうです。よくわからん。まだよくわからん。
まあこれについてTwitterでやいやいつっついてたんですが、すびさんがいち早く理解されてて。
\K が、前述の問題仕様の代替案として有用なんだそうですよ。

なんともありがたい。
なのに忘れかけていたので、忘備録としてここに残すショゾンの刑にショスします。

※ちなみにExtendScriptではピクリともしませんw

Facebooktwittergoogle_plus

4 thoughts on “InDesign:正規表現検索でも文字数不定の後読みできちゃうよ

  1. お世話になります。
    こちらは段落囲み罫とのことで、
    CC2018のみの悪知恵でしょうか?

    • wakuyaさんどうもどうもお世話になっております。
      大元の記事は段落囲み罫の微調整として扱っていますが、本記事で参考にしたのは正規表現のところだけです。
      なので正規表現が使えるバージョンならどれでもいけると思うんですが。
      まあ、まずはお手元でやってみてはいかがでしょう。

  2. こんにちは。
    2017で試しにやってみました。
    なぜか1Lごと(1行飛ばし)で、
    奇数行のみ検索にかかります…。
    行頭マーク^を入れないと引っかかりますね。
    不思議です。

    • CS6とCC2017で、こちらの想定通りに動作しています。
      「親は昭和45年生まれ、子は平成3年生まれ、孫は平成22年生まれ。」
      というテキストに対し
      平成\d+\K年
      で検索したところ、きちんと2箇所の「年」がヒットしましたよ。

コメントを残す

メールアドレスが公開されることはありません。

*