如何将字符串与多个其他字符串进行比较

aur*_*bee 28 ruby

有没有一种方法可以让我在Ruby中比较一个String和多个其他?我真的想做这样的事情:

myString.eql?(["string1","string2","string3"])
Run Code Online (Sandbox Code Playgroud)

mip*_*adi 50

["string1","string2","string3"].include? myString
Run Code Online (Sandbox Code Playgroud)


Dan*_*uis 15

您可以使用Array#include?查看数组是否包含字符串:

%w(string1 string2 string3).include?(myString)
Run Code Online (Sandbox Code Playgroud)


gle*_*ald 12

我发现自己想要这么多,所以我添加了一个String方法,以便能够更加惯用:

class String
  def among?(*array)
    array.flatten.include?(self)
  end
end
Run Code Online (Sandbox Code Playgroud)

然后

myString.among?("string1","string2","string3")
Run Code Online (Sandbox Code Playgroud)