字符串count()方法

忙着学习Ruby ……文档有一个例子:

“你好世界”.count(“lo”,“o”)返回2返回2怎么回事?

在我的例子中,我将:“Lennie”.count(“Le”,“ie”)返回2。

伯爵在这方面如何运作?

"hello world".count("lo")返回五。 它匹配第三,第四,第五,第八和第十个字符。 让我们称之为一组。

"hello world".count("o")返回两个。 它匹配第五和第八个字符。 让我们称之为二。

"hello world".count("lo", "o")计算第一组和第二组的交集。

交集是第三组,包含第二组中的所有元素,它们也在第一组中。 在我们的示例中,两个集合都包含字符串中的第五个和第八个字符。 总共有两个角色。 所以, count返回两个。

如果你给多个参数计数,它只计算所有参数中的字母。 所以在你的第一个例子中,它只计算o。 在你的第二个例子中,它只计算e。

 arr = [1, 2, 3] arr.length # => 3 arr.size # => 3 arr.count # => 3 h = { a: 1, b: 2 } h.length # => 2 h.size # => 2 h.count # => 2 str = 'name' str.length # => 4 str.size # => 4 

str.count将不起作用,因为String不包含Enumerable