unknown wrote:
> But \w includes underscore.  I think punctuation is supposed to remain
> unscrambled, isn't it?  And numbers likewise.

Point taken.

perl -pe 
's/(?<=[a-z])[a-z]+(?=[a-z])/join"",sort{rand>0.5}split"",$&/egi'

(69 chars)

-- 
Posted via http://www.ruby-forum.com/.