如果我有一个像"/hello/world:123/foo-bar"
这样的字符串,我怎么能找到说123
的出现次数?一种方法是使用正则表达式创建Pattern
,然后使用计数器创建Matcher
。但有没有更好的方法,比如一个班轮?
答案 0 :(得分:5)
你可以尝试
"test 123 test".split("123").length - 1; // 1
或者更一般地说
String yourString = "something", searchString = "ome";
yourString.split(searchString).length - 1;
答案 1 :(得分:4)
StringUtils.countMatches(input,"123");
或
while ((index = value.indexOf(findValue, index)) != -1)
{
count++;
index += findValue.length();
}
答案 2 :(得分:4)
您可以检查String.indexOf("123")
和String.lastIndexOf("123")
的结果是否相同。如果是,那么只有一次。