Apply Formatting to Part of What You Find: Look Around
You're working on a document with lots of graphs. The text contains many references to these graphs in the form of Figure followed by the relevant number. The publisher wants those references in bold—just the word Figure, not the number. It is easy to find these instances: just search for Figure \d. To apply the necessary formatting, specify bold in Change Format. But now you have a problem: the numbers appear in bold as well—this is not what we want. What we need to find is not Figure and a following number, but only the word Figure if it is followed by a number. This can be done with the following expression:
Find what: Figure(?=\s\d)
Change to: <enable bold in the Change Format field>
Try this expression and check that InDesign selects instances of Figure only when it is followed by a digit, and that it does not select that digit. (Nor does it select the space between Figure and the digit, as we included that space in the parenthetical.) Naturally, to cope with references such as in Figure 5 and Figure 6 we have to allow for Figures, which is easy: just add s?: Figures?(?=\s\d).
The construct we used here is called "positive lookahead", and can be selected from the Match flyout. Its general format is (?=); after the = symbol, any regular expression can be used.
In the example given here, you have no choice: you have to use the lookahead to get the desired result. But in other cases, typically when you needn't apply formatting, ...
Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Read now
Unlock full access