Как посчитать, сколько раз регулярное выражение захватывает группу? - PullRequest
2 голосов
/ 10 октября 2011

У меня есть регулярное выражение ([A-Za-z]+)

Мой пример текста:

jerk jerk jerk jerk jerk jerk jerk jerk jerk jerk 

Я пытаюсь выяснить, сколько раз группа захвачена в примере.Я хочу, чтобы ответ для входных данных для примера был 10.

Как мне реализовать это?

Ответы [ 2 ]

3 голосов
/ 10 октября 2011

Вы должны указать, что вы хотите сопоставить в регулярном выражении.То, что у вас есть, будет соответствовать любому буквенному символу.Вот, пожалуйста:

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

public class Main {

    public static void main( String[] args ) throws IOException //throws exceptions
    {
        String str = "jerk jerk jerk jerk\njerk jerk jerk\njerk jerk\njerk";
        String regex = "jerk";
        Pattern p = Pattern.compile(regex);
        Matcher m = p.matcher(str);
        int count = 0;
        while(m.find())
            count++;
        System.out.println(count);
    }
}
2 голосов
/ 10 октября 2011
int count = 0;
while (matcher.find())
    count++;
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...