Module | Random::StringExtensions::Self |
In: |
lib/facets/standard/facets/random.rb
|
Class-level 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
# 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