Module Random::StringExtensions::Self
In: lib/facets/standard/facets/random.rb

Class-level methods.

Methods

random  

Public Instance methods

Returns a randomly generated string. One possible use is password initialization. Takes a max legnth of characters (default 8) and an optional valid char Regexp (default /\w\d/).

  String.random    #~> 'dd4qed4r'

CREDIT George Moschovitis

[Source]

# File lib/facets/standard/facets/random.rb, line 353
      def random(max_length = 8, char_re = /[\w\d]/)
        raise ArgumentError.new('char_re must be a regular expression!') unless char_re.is_a?(Regexp)
        string = ""
        while string.length < max_length
            ch = Random.number(255).chr
            string << ch if ch =~ char_re
        end
        return string
      end

[Validate]