http://www.perlmonks.org?node_id=638214


in reply to Yet Another Rosetta Code Problem (Perl, Ruby, Python, Haskell, ...)

My take on a slightly more concise Ruby version:
s = "ZBBBCZZ" x = s.scan(/((.)\2*)/).map{|v|v[0]}