Try
-pe 'gsub!(/\B\w+\B/){$&.split(//).sort_by{rand}.join}
Shorter (and even cleaner too!)
-Kurt
On Wed, Sep 17, 2003 at 03:20:53AM +0900, Xavier Noria wrote:
> On Tuesday 16 September 2003 20:07, Kurt M. Dresner wrote:
>
> > This is hilarious, because a friend and I just had (over lunch) a
> > race to see who could code it up first. I used Ruby and he used
> > Perl. Mine worked first, but then I reworked it a bit to make it
> > neater. His was impossible to read, but I totally have to send him
> > this one-liner. Man, sort_by{rand} is so awesome! I can't believe I
> > didn't think of that!
>
> Cool! :-) I have just written this version even shorter:
>
> -pe 'gsub!(/(\w)(\w+)(?=\w)/){$1+$2.split(//).sort_by{rand}.to_s}'
>
> -- fxn
>
>
>======= End of Original Message =======<