Можно ли создать регулярное выражение с переменным числом групп?
После запуска этого примера...
Pattern p = Pattern.compile("ab([cd])*ef");
Matcher m = p.matcher("abcddcef");
m.matches();
... Я хотел бы иметь что-то вроде
-
m.group(1)="c" -
m.group(2)="d" -
m.group(3)="d" -
m.group(4)="c".
(Предыстория: я разбираю некоторые строки данных, и одно из "полей" повторяется. Я бы хотел избежать цикла matcher.find для этих полей.)
Как указано @Tim Pietzcker в комментариях, perl6 и . NET имеют эту функцию.