Sha256: 0417bd247b393b981afd94edd9549d3e29bc4a6f04cd401dd6be61febd580161

Contents?: true

Size: 734 Bytes

Versions: 1

Compression:

Stored size: 734 Bytes

Contents

require 'nano/array/shuffle'

class String

  # Return the string with seperated sections arranged
  # in a random order. The default seperation is by character.
  #
  #   "Ruby rules".shuffle  #=> "e lybRsuur"
  #
  def shuffle(separator=//)
    split(separator).shuffle.join('')
  end

  # In place version of shuffle.
  #
  def shuffle!(separator=//)
    self.replace( shuffle(separator) )
  end

end


#  _____         _
# |_   _|__  ___| |_
#   | |/ _ \/ __| __|
#   | |  __/\__ \ |_
#   |_|\___||___/\__|
#
=begin test

  require 'test/unit'

  class TCString < Test::Unit::TestCase

    def test_shuffle
      assert_nothing_raised { "abc 123".shuffle }
      #assert_nothing_raised { "abc 123".shuffle! }
    end

  end

=end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
facets-0.9.0 lib/nano/string/shuffle.rb