tl;dr gyazo.com たとえば以下のようなテキストを編集しているとして、 そのバンドの3rdアルバム「A」は私のフェイヴァリットだが、彼らの代名詞とも言える独特のギターサウンドは2ndアルバム「B」から4枚目の「C」までに集約され、5枚目の「D」からはディスコサウンドに路線を転換したためファンの間でも賛否が分かれた。 いま書きながら考えたテキトウな文章ですが、この中のアルバム名をくくった括弧「」をすべて『』に変えたくなった、とする。 このぐらいの長さなら一つ一つ手で直すのもアリかもしれないけど、何万字というテキストに対して同様のことをしようとなると、けっこう泣ける。 そこで、Vimの正規表現でガサッと変えよう! なんて思って以下のように打ち込むと、 :%s/「\(.\+\)」/『\1』/gc 「A」を拾いたいはずのところで以下の部分が拾われる。 「A」は私のフェイヴァリットだが、
![Vimの正規表現で最短マッチ(非欲張り型)を実現する - the code to rock](https://cdn-ak-scissors.b.st-hatena.com/image/square/5d0d9c46680c9499c1248edfe7af62578cd1f604/height=288;version=1;width=512/http%3A%2F%2Fcdn-ak.f.st-hatena.com%2Fimages%2Ffotolife%2Fn%2Fnote103%2F20150408%2F20150408184102.gif)