Java - 在字符串中查找子字符串的出现

时间:2017-05-23 15:45:51

标签: java

说我有一个字符串

String s = "foofoo bar barbarbar foo

我希望找到foo的所有匹配项并将其打印出来:

foo foo foo

我已经查看了StringUtils,但在我(业余爱好者)看来,这个库只能计算foo出现的。我有什么问题吗?或者正则表达式真的是最好的方式吗?

1 个答案:

答案 0 :(得分:-1)

您可以使用String类的indexOf方法和同一类的substring方法来实现所需的结果,但使用正则表达式可以减少键入并更容易实现。我在下面为您提供了一个可能的解决方案

import java.util.regex.Matcher;
import java.util.regex.Pattern;


public class Sample {
public static void main(String[] args) {
    String s = "foofoo bar barbarbar foo";

    Pattern p = Pattern.compile("foo");
    Matcher m = p.matcher(s);
    while(m.find()){
        System.out.print(m.group() + " ");
    }
}
}