[ruby-list:47331] 入れ子ブレースのマッチング

From: AOKI Yoshihiro <aoki@...>
Date: 2010-08-24 02:48:55 UTC
List: ruby-list #47331
青木です。

主にTeXを想定してなのですが,

  {aaa{bbb}} {ccc{ddd}} {e}

のように1行にブレースが頻出するケースで,無欲マッチで

  /\{[^}].*?\}/

とすると

  {aaa{bbb}

がマッチすると思いますが,起こしと閉じのペアをうまく拾ってくる方法はあるのでしょうか。

if s.count('{') != s.count ('}')
 ...
end

のようにして,$' から次の } まで取ってきて数が一致するまで繰り返す,という方法しか思いつかないです。

----
青木


In This Thread

Prev Next