如何在Ruby中编写将传入的字符串增加X个随机字符的方法

时间:2018-12-28 19:19:11

标签: ruby

我是红宝石的新手。我隐约记得使用Java中的增量功能,例如

for i = 0; i < 100; i++

我正在通过在句子的末尾添加很多字符来测试文本框的压力,以查看文本框在这种情况下是否可以工作。 .succ没有帮助我。我试图在字符串的末尾添加100个随机字符。

2 个答案:

答案 0 :(得分:3)

也许这对您有用:

100.times.map{ ('a'..'z').to_a.sample }.join('')
#=> "jbcyklmcdaxzpucrrlguzfdmipnkmqllowziirdvcysjmyxirjnagoojazepxxmzzysonjicbjtgqinkvenastfmuvayefrxjjhn"

或者,获得更多字符:

chars = [*('A'..'Z'), *('a'..'z'), *('0'..'9')]
100.times.map{ chars.sample }.join('')
#=> "3kwsbKYTmXR9qmmC1JDdAkIP1tqA89L0ABF1et2drpPMUVP01qUHbmynB4iOzsGrmYzCdpva98boqoR2q6tIcOAvNb0ZiQ9tkkLr"

答案 1 :(得分:0)

您可以使用string_pattern gem https://github.com/MarioRuiz/string_pattern来测试字段,或者使用nice_hash https://github.com/MarioRuiz/nice_hash来测试Web表单或REST服务。它既简单又强大。

要生成100个随机字母:

"100:L".gen