字符串函数 - Ruby 中如何生成一个随机字符串?
伊谢尔伦
伊谢尔伦 2017-04-22 08:59:12
0
3
723

需要得到一个大小写混合的字符串[a,A-Z,z],目前用的方法是

value = ""; 12.times{value << ((rand(2)==1?65:97) + rand(26)).chr}

感觉还是不好,而且再加混合数字的串就不会了。不知道有没有更好的方法,烦请详细指点!

伊谢尔伦
伊谢尔伦

小伙看你根骨奇佳,潜力无限,来学PHP伐。

全部回覆(3)
左手右手慢动作

(0...50).map{ ('a'..'z').to_a[rand(26)] }.join

下面這個效率更高:
o = [('a'..'z'),('A'..'Z')].map{|i| i.to_a}.flatten;
string = (0...50).map{ o[rand(o.length)] }.join;

巴扎黑

加多一個供樓主選擇:
rand(36 ** n).to_s(36)
n是產生的字串的長度

PHPzhong

[*('a'..'z'),*('A'..'Z'),*(0..9)].shuffle[0..9].join

熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板
關於我們 免責聲明 Sitemap
PHP中文網:公益線上PHP培訓,幫助PHP學習者快速成長!