【发布时间】:2011-12-16 01:45:51
【问题描述】:
Scala 是否有一种本地方法来计算字符串中某个字符的所有出现次数?
如果是这样,我该怎么做?
如果不需要,我需要使用 Java 吗?如果是这样,我该怎么做?
谢谢!
【问题讨论】:
-
如果您需要对字符串中的每个字符进行计数,这个相关问题可能很有用:stackoverflow.com/questions/12105130/…
标签: scala
Scala 是否有一种本地方法来计算字符串中某个字符的所有出现次数?
如果是这样,我该怎么做?
如果不需要,我需要使用 Java 吗?如果是这样,我该怎么做?
谢谢!
【问题讨论】:
标签: scala
"hello".count(_ == 'l') // returns 2
【讨论】:
我不使用 Scala 甚至 java,但谷歌搜索“Scala string”将我带到here
其中包含:
def
count (p: (Char) ⇒ Boolean): Int
Counts the number of elements in the string which satisfy a predicate.
p
the predicate used to test elements.
returns
the number of elements satisfying the predicate p.
Definition Classes
TraversableOnce → GenTraversableOnce
看起来很简单,但我不使用 Scala,所以不知道调用成员函数的语法。这种方式可能比需要的开销更大,因为它看起来可以搜索一系列字符。在不同的结果页面上读取字符串可以更改为字符序列,您可以轻松地循环遍历它们并增加计数器。
【讨论】:
您还可以通过使用sliding,采用更高级别的方法来查看另一个字符串中出现的子字符串:
def countSubstring(str: String, sub: String): Int =
str.sliding(sub.length).count(_ == sub)
【讨论】: