Есть ли какие-либо (свободные) механизмы регулярного выражения для Java, который может скомпилировать регулярное выражение в DFA и действительно группирует получение при соответствии DFA?
Я нашел dk.brics.automaton и jrexx, который обе компиляции к DFA, но ни один, кажется, не в состоянии сделать получение группы. В то время как другие механизмы, которые я нашел, кажется, компилируют в NFA.
вы можете попробовать библиотеку регулярных выражений Pat @ http://www.javaregex.com/ .
Для C существуют библиотеки TRE и Google RE2 . TRE использует DFA, RE2 использует NFA (насколько я понимаю), оба могут совпадать с подгруппами. Но такой библиотеки для Java я не видел.