在Ruby中生成随机值

时间:2017-02-14 09:42:06

标签: ruby

我是Ruby的新手。我想生成随机值并添加到域名。在Ruby中执行此操作的正确方法是什么?

:domain => 'test-domain'

例如,我想做这样的事情:

:domain => "test-domain #{SecureRandom.random_number(100)}"

1 个答案:

答案 0 :(得分:2)

如果您确实希望它在100个数字中,请使用简单的rand函数。

您可以使用简单的rand ruby​​函数。

rand获取参数以获取该范围内的随机数。

通常需要2个参数, rand(from, to) ,从默认值为0。

因此,rand(0,100)从0到100开始

rand(10,20)给出值b / w 10和20

"test-domain #{rand(100)}"

==> "test-domain 46"

"test-domain #{rand(500)}"

==> "test-domain 246"

"test-domain #{rand(1000)}"

==> "test-domain 786"

RUBY HAS A RANDOM CLASS OF ITS OWN

对于随机字符,

您可以使用 (0...5).map { (65 + rand(26)).chr }.join 。 (来自外部来源)

取代 (0...5) ,您可以选择自己喜欢的字符数。

示例大写:

"test-domain #{(0...5).map { (65 + rand(26)).chr }.join}"
 => "test-domain UKONO"

 "test-domain #{(0...3).map { (65 + rand(26)).chr }.join}"
 => "test-domain OFU"

 "test-domain #{(0...8).map { (65 + rand(26)).chr }.join}"
 => "test-domain YHODHUSY"

小写:

"test-domain #{(0...8).map { (97 + rand(26)).chr }.join}"
 => "test-domain vozxaxza"

"test-domain #{(0...4).map { (97 + rand(26)).chr }.join}"
 => "test-domain ygpm"