Ruby:如何检查一个字符串是否包含多个项目?
问题描述:
我熟悉Ruby的include?
字符串的方法,但是我怎样才能检查一个字符串的多个东西?Ruby:如何检查一个字符串是否包含多个项目?
具体来说,我需要检查,如果一个字符串包含“转发:”或“FW:”(和应不区分大小写)
实例的字符串将是:“FWD:您的Amazon.com订单已发货”
答
the_string =~ /fwd:|fw:/i
您也可以使用类似
%w(fwd: fw:).any? {|str| the_string.downcase.include? str}
虽然我个人使用正则表达式更好地在这种情况下(尤其是当你在调用downcase喜欢的版本第二个使其不区分大小写)。
谢谢。使用正则表达式...你将如何翻译该行来说“如果the_string没有fwd:| fw:”? – Shpigford 2010-01-21 21:07:27
另外,是否有使用'=〜'的官方术语# – Shpigford 2010-01-21 21:07:59
有'!〜'运算符,它与否定'=〜'的结果完全相同。使用'=〜'通常被称为匹配正则表达式。不知道这是否是一个官方任期。 – sepp2k 2010-01-21 21:18:46