JavaRush /Java блог /Архив info.javarush /Вопрос по применению регулярных выражений
GreenFrog
22 уровень
Москва

Вопрос по применению регулярных выражений

Статья из группы Архив info.javarush
Добрый день, джаварашевцы и джаварашатессы! Прошу подсказать следующее, есть код: Pattern p = Pattern.compile("[a-z]+"); Matcher m = p.matcher("A mutable sequence of characters."); int numberOfChar = m.groupCount(); System.out.println(numberOfChar); В консоль должно быть выведено количество символов от a до z (c учетом повторения) в указанной строке. Выводит ноль. Никак не пойму почему. Уже несколько статей прочитал по регулярным выражениям. Не помогает. Почитал документацию Oracle по классам Pattern, Matcher. Опять не помогло. Наверное глаз замылился, не вижу чего-то очевидного. Прошу бескорыстно помочь. И достичь цели - пройти 18 и 19 уровни до конца 2017 года. С уважением, Зеленая лягушка.
Комментарии (4)
ЧТОБЫ ПОСМОТРЕТЬ ВСЕ КОММЕНТАРИИ ИЛИ ОСТАВИТЬ КОММЕНТАРИЙ,
ПЕРЕЙДИТЕ В ПОЛНУЮ ВЕРСИЮ
ferasinka Уровень 32
15 декабря 2017

        Pattern p = Pattern.compile("[a-z]{1}");
        Matcher m = p.matcher("A mutable sequence of characters.");
    
        int numberOfChar = 0;
        
        while (m.find()) {
            numberOfChar++;
        }
        
        System.out.println(numberOfChar);


Удобный сайт для тестирования регулярных выражений: regex101.com
GreenFrog Уровень 22
15 декабря 2017
Дополнение №1. Судя по моим программным экскрементам экспериментам, на соответствие паттерну проверяется строка целиком, а не посимвольно. Думаю дальше. Но у вас есть еще шанс успеть подсказать мне.
Зеленая лягушка.