检测字符串是否只出现一次数字

时间:2013-09-19 00:51:49

标签: java

如果我有一个像"/hello/world:123/foo-bar"这样的字符串,我怎么能找到说123的出现次数?一种方法是使用正则表达式创建Pattern,然后使用计数器创建Matcher。但有没有更好的方法,比如一个班轮?

3 个答案:

答案 0 :(得分:5)

你可以尝试

"test 123 test".split("123").length - 1; // 1

或者更一般地说

String yourString = "something", searchString = "ome";
yourString.split(searchString).length - 1;

答案 1 :(得分:4)

尝试StringUtils.countMatches

StringUtils.countMatches(input,"123");

while ((index = value.indexOf(findValue, index)) != -1)
        {
            count++;
            index += findValue.length();
        }

答案 2 :(得分:4)

您可以检查String.indexOf("123")String.lastIndexOf("123")的结果是否相同。如果是,那么只有一次。