遠藤と申します。

"DeepBlueEyes".split(/(?=[A-Z])/) # => ["Deep", "Blue", "Eyes"]
----- Original Message -----
> 小波です。
> 
> 正規表現について質問が出ているので便乗させてください。
> 
> キャメルケースの複合文字列,たとえば "DeepBlueEyes" 
> (複合している語は4つ以内,英字のみ)から
> ["Deep", "Blue", "Eyes"] のような配列を生成できない
> ものかと思って試しています。
> 
> /([A-Z][a-z]+)([A-Z][a-z]+)([A-Z][a-z]+)([A-Z][a-z]+)/
> でマッチさせて,[$1,$2,$3,$4] という配列から nil
> 捨てるという方法を考えたのですが,サイズに対してフレキ
> シブルではない(複合語数が増えたらめんどい)のでいまいち
> 気に入りません。うまい方法はないものでしょうか。