Регулярное выражение Java с lookahead

Есть ли способ распечатать обратную часть шаблона регулярного выражения в java?

    String test = "hello world this is example";
    Pattern p = Pattern.compile("\\w+\\s(?=\\w+)");
    Matcher m = p.matcher(test);
    while(m.find())
        System.out.println(m.group());

этот фрагмент печатает:

hello
мир
это

то, что я хочу сделать, это печатать слова как пары:

hello world
world this this this является примером

как я могу это сделать?

Ответ 1

Вы можете просто скопировать скобки в выражение вида:

String test = "hello world this is example";
Pattern p = Pattern.compile("\\w+\\s(?=(\\w+))");
Matcher m = p.matcher(test);
while(m.find()) 
    System.out.println(m.group() + m.group(1));