如何从字符串中随机选择一定数量的项目,空格分隔?

AnA*_*ice 1 ruby arrays string ruby-on-rails-4

给出如下字符串:

string = "hotdog cat food pickle sock ring lock fist door"
Run Code Online (Sandbox Code Playgroud)

什么是随机选择4项(以空格分隔)的正确方法.所以我可以回来:

result = "fist_sock_food_cat"
Run Code Online (Sandbox Code Playgroud)

谢谢

And*_*eko 10

您可以使用 String#split和Array#sample:

string
  .split     #=> ["hotdog", "cat", "food", "pickle", "sock", "ring", "lock", "fist", "door"]
  .sample(4) #=> ["ring", "pickle", "food", "fist"]
  .join('_') #=> "ring_pickle_food_fist"
Run Code Online (Sandbox Code Playgroud)