我想知道是否有一种方法可以从正则表达式生成随机字符串,例如:
/[a-z0-9]{5}/.to_s
#=> "dsar3"
我找到了randexp
(https://github.com/benburkert/randexp),但它似乎不适用于上面的基本示例,无论如何我觉得它被遗弃了。
任何人?
我想知道是否有一种方法可以从正则表达式生成随机字符串,例如:
/[a-z0-9]{5}/.to_s
#=> "dsar3"
我找到了randexp
(https://github.com/benburkert/randexp),但它似乎不适用于上面的基本示例,无论如何我觉得它被遗弃了。
任何人?
Perl 有一个 CPAN 模块可以做到这一点。它通过将正则表达式转换为生成语法来工作。这个概念可能适用于 Ruby,但需要一点工作。
见http://metacpan.org/pod/Parse::RandGen和http://metacpan.org/pod/Parse::RandGen::Regexp
不,但如何:
(0..255).map(&:chr).select{|x| x =~ /[a-z0-9]/}.sample(5).join
#=> "qif0l"