我正在尝试在包含大写、小写、数字和特殊字符的 ruby 中创建一些可读的单词,例如:
FlAshmnger!2
Derfing$23
要在 ruby 中创建随机字符串,您可以执行以下操作:
lower = ('a'...'z').to_a
upper = ('A'...'Z').to_a
numbers = (0...9).to_a
specs = %w(! ? * ^ $)
size = 8
charset = [lower, upper, numbers, specs].flatten
(0...size).map { charset[rand(charset.size)] }.join
#<= ?!VVQUjH
#<= ^tsm^Led
有没有办法确保随机字符串有点可读?包含常数、元音等。具有特殊字符和至少一个数字而不使用外部宝石?