ФорумПрограммированиеБольше языковJava → Помогите разобраться с классом Matcher

Помогите разобраться с классом Matcher

  • gvik

    Сообщения: 137 Репутация: N Группа: Кто попало

    Spritz Март 31, 2011, 10:41 д.п.

    Добрый день!
    Я начинающий юзер JSE, поэтому сильно не ругайте:)
    Изучая Pettern и Matcher, я написал следующий код:

    String regex = "[[a-zA-Z]+(\\d){1}[=]]+";
    String str = "index1=";
    Pattern p = Pattern.compile(regex);
    Matcher m = p.matcher(str);
    System.out.println(str);
    System.out.println(m.matches());
    System.out.println(m.group(0));

    код должен выцепить числовое значение из строки str
    мне не понятна работа метода Matcher.group(int), int - это номер группы.
    если я правильно понимаю, то с каждой новой парой (…) в regex-выражении создаётся новая группа в которой находится то что данная пара скобок нашла.
    у меня в данном случае создаётся только нулевая группа, в которой содержится всё что нашёл regex.
    расскажите, кто может, пожалуйста, этот момент
    С уважением, gvik
  • fgets

    Сообщения: 1099 Репутация: N Группа: Кто попало

    Spritz Апрель 15, 2011, 12:13 п.п., спустя 15 дней 1 час 31 минуту

    код должен выцепить числовое значение из строки str

    str = "хуйпиздатудасюда38194891 ололо 349234923";
    Pattern p = Pattern.compile("([0-9]+)");
    Matcher m = p.matcher(str);
    System.out.println(m.matches());

Пожалуйста, авторизуйтесь, чтобы написать комментарий!