From: Love U Ruby Date: 2013-05-08T21:08:00+09:00 Subject: Re: Recursion is not working well Finally I fixed it: s = :split_this_game_world def brk(s) ar = [] cp = (s =~ /[_]/) ss = s[0...cp] if cp != nil return s if cp == nil ar.push(ss) return ar.push(brk(s[cp+1,s.size - ss.size])).flatten end p brk(s) #=>["split", "this", "game", "world"] Can this code be shorten or more Rubystic(obviously not converting the symbol to String in first place)? -- Posted via http://www.ruby-forum.com/.