From: "K.Kosako" Date: 2002-03-29T18:01:17+09:00 Subject: [ruby-dev:16676] Re: [OniGuruma] nested repeat operator Tanaka Akiraさんのから > % print -l b ab aab | ruby -ne 'p [/\A((?:a*)??).?b/, /\A(a*?).?b/, /\A(a*).?b/].map {|re| re =~ $_; $1}' > ["", "", ""] > ["", "", "a"] > ["aa", "a", "aa"] > > つまり、a が n回マッチするとき、 > a*? は 0, 1, ... > a* は n, n-1, ... > (?:a*)?? は 0, n, n-1, ... > という順番で試すのではないだろうか、ということです。 確かにそうですね。考えてもみませんでした。 これはエラーにならないようにしようと思います。 -- 小迫@ソフネック 渋谷区恵比寿1-15-1