Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
我不明白为什么在这两种情况下include?都返回true。有人可以启发我吗?
include?
true
"".include?("") # => true "stackoverflow".include?("") # => true
该文档指出:
include? other_str → true or false Returns true if str contains the given string or character.
因为字符串“stackoverflow”在字母/字符之间包含无限数量的空字符串。
这不是错误。count并且include?工作方式非常不同。include?检查子字符串,但描述count说
count
[每个参数] 定义一组要计数的字符。这些集合的交集定义了要在 str 中计数的字符。
通过仅提供空字符串作为参数,您可以告诉count不要计算任何字符。在这种情况下它返回的唯一明智的事情是 0。