Priklad bol asi zvoleny nevhodne. Toto som urobil rychlejsie nez som precital clanok. Pracu s jednotlivymi hodnotami group(N) uz asi zvladne kazdy. Ja tomu clanku asi nerozumiem.
__________________________________________________
import java.util.regex.*;
import java.io.*;
public class Do {
public static void main(String arg[]) throws java.io.IOException {
BufferedReader d=new BufferedReader(new InputStreamReader(System.in));
Máte v podstatě pravdu, že pro soubory přesně tohoto formátu by to takhle bylo jednodušší. Ale příklad je úmyslně zjednodušen a navíc ten konečný automat z Ragelu je o něco málo obecnější, než Vaše řešení - zpracuje v druhé části libovolný počet polí. BTW, těch polí je víc než 5 - řádky ve výpisu CSV souboru jsou pro přehlednost zkráceny - všimněte si třech teček.
Vaše řešení má IMHO oproti mému ještě další nevýhodu: zkuste si (když už je to cvičení :-) ty regulární výrazy upravit tak, aby akceptovaly v hodnotě pole uvozovky (obvykle se zdvojují nebo se nějak escapují např. dvojice backslash-uvozovky). Možná, že to není složité (nepovažuji se zrovna za regexp guru), ale přesto si myslím, že úpravy tohoto typu jsou v gramatice Ragelu podstatně jednodušší.
Fakt netuším, co proti autorovi článku všichni máte. Nepoužil reguláry, nepoužil sed. Nepoužil Javu. Porušil kodex? Naopak myslím, že celkem přehledně demonstroval použití univerzálního parseru. Kolikrát člověk řešil nějaký šablonovací systém a potřeboval právě něco takového (a ne všichni se to učili ve škole, takže ne všichni vědí, že podobné parsery vůbec existují).
A vzhledem k tomu, že parsování souboru sedem může být časově náročnější, autorův přístup oceníte, zejména děláte-li hodně bankovních operací za sekundu :-)