Yukihiro Matsumotoさんの
<1017379007.731523.9276.nullmailer / ev.netlab.jp>から
> |/(a?)?/はエラーでなくて、/(?:a?)?/はエラーになる
> |というのは、意図的にそうしているのですが、
> |変更したほうがいいのでしょうか?
> 
> これはどういう意図なのでしょう。なんとなくどちらもエラーのよ
> うに思うのですが。

()の場合、内側の?も影響を与えることがあるのではないかと思います。

p(/(.?)?/.match("")[1])  # => ""
p(/(.)?/.match("")[1])   # => nil


それから最新版では、
?,*,+と同じになる{n,m}を使用した場合には、
エラーチェックをしないようにしています。
 /a{0,1}{0,1}/ etc...

数値から合成されることもあると思ってそうしたのですが、
それほど意味はないかもしれません。
--
小迫@ソフネック   渋谷区恵比寿1-15-1