Beefy Boxes and Bandwidth Generously Provided by pair Networks
There's more than one way to do things
 
PerlMonks  

Re^2: Yet Another Rosetta Code Problem (Perl, Ruby, Python, Haskell, ...)

by Anonymous Monk
on Sep 11, 2007 at 00:54 UTC ( #638193=note: print w/ replies, xml ) Need Help??


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

Ruby solution

x = [] "ZBBBCZZ".scan(/((.)\2*)/){ x << [$~[0]]; x.flatten!}
.flatten is needed else you get
# => [["Z"], ["BBB"], ["C"], ["ZZ"]]
as result.

But this is quite an ugly solution anyway... in fact, perl looks almost as readable in this example ;)

not sure how to solve this any easier though, hmm i wonder if .each could be used and then another grouping way... I really dont like the regex magic of the ruby solution, cant you guys think of another solution :-)


Comment on Re^2: Yet Another Rosetta Code Problem (Perl, Ruby, Python, Haskell, ...)
Select or Download Code
Re^3: Yet Another Rosetta Code Problem (Perl, Ruby, Python, Haskell, ...)
by Anonymous Monk on Sep 11, 2007 at 00:55 UTC
    Oh and btw this comment box sucks! [[ newlines should become html br tags! :(
      Oh and btw this comment box sucks! [[ newlines should become html br tags! :(
      The comment box accepts a limited subset of HTML (with some added Perlmonks-specific markup).
      Newlines (and other whitespace) don't behave in HTML as your describe.

      This isn't your bff's blog or your mum's guestbook. :-)

      If you were logged in, you could update your post to look a little nicer.

      -David

Re^3: Yet Another Rosetta Code Problem (Perl, Ruby, Python, Haskell, ...)
by eyepopslikeamosquito (Canon) on Sep 11, 2007 at 22:19 UTC

    I really dont like the regex magic of the ruby solution, cant you guys think of another solution :-)
    How about some inject magic?
    x = s.split(//).inject([]) {|a,e| (a.last && a.last[e] ? a.last : a) < +< e; a}

Log In?
Username:
Password:

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://638193]
help
Chatterbox?
and the web crawler heard nothing...

How do I use this? | Other CB clients
Other Users?
Others chilling in the Monastery: (6)
As of 2015-07-02 23:36 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    The top three priorities of my open tasks are (in descending order of likelihood to be worked on) ...









    Results (47 votes), past polls