3

可能重复:
字符串函数如何计算字符串行中的分隔符

我有一个字符串 str = "one$two$three$four!five@six$" 现在如何使用 java 代码计算该字符串中“$”的总数。

4

3 回答 3

7

使用全部替换:

    String str = "one$two$three$four!five@six$";

    int count = str.length() - str.replaceAll("\\$","").length();

    System.out.println("Done:"+ count);

印刷:

Done:4

使用replace而不是replaceAll将减少资源密集度。我只是用replaceAll向您展示了它,因为它可以搜索正则表达式模式,这就是我最常使用它的地方。

注意:使用replaceAll我需要转义$,但使用replace没有这样的需要:

str.replace("$");
str.replaceAll("\\$");
于 2012-07-20T06:33:53.367 回答
3

您可以迭代Characters字符串中的:

    String str = "one$two$three$four!five@six$";
    int counter = 0;
    for (Character c: str.toCharArray()) {
        if (c.equals('$')) {
            counter++;
        }
    }
于 2012-07-20T06:31:58.717 回答
2
String s1 = "one$two$three$four!five@six$";

String s2 = s1.replace("$", "");

int result = s1.length() - s2.length();
于 2012-07-20T06:37:54.087 回答