Форум программистов, компьютерный форум, киберфорум
Java SE (J2SE)
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
0 / 0 / 1
Регистрация: 24.01.2014
Сообщений: 51

Regexp

01.05.2014, 19:34. Показов 629. Ответов 0
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Здраствуйте. Помогите с regxep.По книге Блинова стр 179. Почему во втором случае именно так, ведь по описанию квантификатора второй случай первая группа должна быть пустая. Заранее благодарен.

Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
public class Groups {
public static void main(String[] args) {
String input = "abdcxyz";
myMatches("([a - z]*)([a-z]+)", input);
myMatches("([a-z]?)([a-z]+)", input);
myMatches("([a-z]+)([a-z]*)", input);
myMatches("([a-z]?)([a-z]?)", input);
}
 
public static void myMatches(String regex,String input) {
Pattern pattern = Pattern.compile(regex);
Matcher matcher = pattern.matcher(input);
if (matcher.matches()) {
System.out.println("First group: "+ matcher.group(1));
System.out.println("Second group: "+ matcher.group(2));
}
else
System.out.println("nothing");
System.out.println();
}
}
Результат работы программы:

Code
1
2
3
4
5
6
7
First group: abdcxy
Second group: z
First group: a
Second group: bdcxyz
First group: abdcxyz
Second group:
nothing
В первом случае к первой группе относятся все возможные символы, но при
этом остается минимальное количество символов для второй группы.
Во втором случае для первой группы выбирается наименьшее количество
символов, т. к. используется слабое совпадение.
В третьем случае первой группе будет соответствовать вся строка, а для вто-
рой не остается ни одного символа, таккак вторая группа использует слабое совпадение.
В четвертом случае строка не соответствует регулярному выражению, т. к.
для двух групп выбирается наименьшее количество символов
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
01.05.2014, 19:34
Ответы с готовыми решениями:

Regexp
Доброго всем вечера! Не могли бы вы подсказать как построить регулярное выражение для парсинга арифметических формул? (Например, 4+5 или...

Калькулятор с regexp
Нужно написать простой калькулятор (операции +-*/). Входные данные String "3.00+2.00". С помощью регулярного выражения взял из строки цифры...

Regexp составить
Нужно составить regexp чтобы вытащить из 1A18 - 9 цифры 1 и 18 на этом сайте ничего не получается Добавлено через 12 минут и...

0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
01.05.2014, 19:34
Помогаю со студенческими работами здесь

Объясните с regexp-ом
Есть строка Где символ разделитель | (прямая черта) нужно распарсить этим инструментом String attr = str.split("какой-то...

Regexp для строки
Нужно из строки "2.85+8.75" с помощью regexp изъять цифры (знаки перед ними в том числе). Мое выражение: (()?\b(\.\d{0,2})?\b)|() ...

RegExp. Найти пробелы, кроме
Добрый день! Есть некая строка: "123 456 ${date(<cpd>, <yymmdd>}" Необходимо сделать из этой строки массив, который будет содержать...

Regexp: распарсить и заменить символы
есть строка парсится через .split("\\/",-1); Теперь нужно распарсенные привести к типу double или float, но при...

Подскажите как допилить regexp
Я хочу найти общее количество вхождений следующих символов (*, /, ^, +, -, cos, sin, tan) в строке. Например, для этой строки...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
1
Ответ Создать тему
Новые блоги и статьи
Программный отбор значения справочника
Maks 21.03.2026
Процедура ВодителиНачалоВыбора(Элемент, ДанныеВыбора, ВыборДобавлением, СтандартнаяОбработка) / / Отключаем стандартную обработку (стандартное открытие формы выбора без фильтров) . . .
Переходник USB-CAN-GPIO
Eddy_Em 20.03.2026
Достаточно давно на работе возникла необходимость в переходнике CAN-USB с гальваноразвязкой, оный и был разработан. Однако, все меня терзала совесть, что аж 48-ногий МК используется так тупо: просто. . .
Оттенки серого
Argus19 18.03.2026
Оттенки серого Нашёл в интернете 3 прекрасных модуля: Модуль класса открытия диалога открытия/ сохранения файла на Win32 API; Модуль класса быстрого перекодирования цветного изображения в оттенки. . .
SDL3 для Desktop (MinGW): Рисуем цветные прямоугольники с помощью рисовальщика SDL3 на Си и C++
8Observer8 17.03.2026
Содержание блога Финальные проекты на Си и на C++: finish-rectangles-sdl3-c. zip finish-rectangles-sdl3-cpp. zip
Символические и жёсткие ссылки в Linux.
algri14 15.03.2026
Существует два типа ссылок — символические и жёсткие. Ссылка в Linux — это запись в каталоге, которая может указывать либо на inode «файла-ИСТОЧНИКА», тогда это будет «жёсткая ссылка» (hard link),. . .
[Owen Logic] Поддержание уровня воды в резервуаре количеством включённых насосов: моделирование и выбор регулятора
ФедосеевПавел 14.03.2026
Поддержание уровня воды в резервуаре количеством включённых насосов: моделирование и выбор регулятора ВВЕДЕНИЕ Выполняя задание на управление насосной группой заполнения резервуара,. . .
делаю науч статью по влиянию грибов на сукцессию
anaschu 13.03.2026
прикрепляю статью
SDL3 для Desktop (MinGW): Создаём пустое окно с нуля для 2D-графики на SDL3, Си и C++
8Observer8 10.03.2026
Содержание блога Финальные проекты на Си и на C++: hello-sdl3-c. zip hello-sdl3-cpp. zip Результат:
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru