[OS X TeX] Find and replace with regular expressions
Eric Jablow
ejablow at cox.net
Mon Nov 19 08:39:33 EST 2007
On Nov 19, 2007, at 8:18 AM, Matthew Leingang wrote:
> On Nov 19, 2007, at 7:20 AM, Alessandro Andretta wrote:
>
>> I would like to replace the $ signs in a LaTeX file with \( and \)
>> thus I would have to search for $...$ and replace it with \( ... \)
>> where ... is any string of symbols (letters, numbers, \ , {} &,etc)
>> EXCEPT $. I tried the help menu of TeXShop, TextMate, Textwrangler,
>> but their general treatment seems be a bit too technical for my
>> taste.
>> Is there a simple way to archive this with any of the editors above?
>
> Dear Alessandro,
>
> Good question. You need a more advanced search-and-replace
> capability that looks at the context, not just the string itself.
> This is what regular expressions [1] are for.
>
> TeXShop has regular expression support built in. So you can open up
> a find window,
> put this in the search box
>
> \$([^$]+)\$
>
> and this in the replace box
>
> \\(\1\\)
>
> make sure you click "Regular Expressions," and go.
This has some flaws. You need negative look-behind assertions in the
search, because you don't want to pick up the \$ of
Acme sells widgets for \$5.00 a unit. The cost to produce $x$
widgets is $2x-0.03 x^2$ dollars.
Different regex engines have different ways of handling such assertions.
Respectfully,
Eric Jablow
More information about the MacOSX-TeX
mailing list