%% %include Jflex.include %{ int nb_v = 0, nb_mots = 0, nb_lignes = 0, nb_punct = 0; %} %eof{ System.out.println("\n nb_v = " + nb_v + ", nb_mots = " + nb_mots + ", nb_punct = " + nb_punct + ", nb_lignes = " + nb_lignes); %eof} NL = \R BLANC = [ \t] MOT = [-[:letter:]] + PUNCT = [,.!?\'():-;] // v_oulipo.data : nb_v = 52, nb_mots = 143, nb_punct = 21, nb_lignes = 14 // v_oulipo-VO.data : nb_v = 49, nb_mots = 127, nb_punct = 20, nb_lignes = 10 %% [vV]{MOT}? { ECHO("Vmot"); nb_mots++; nb_v ++; } {MOT} { ECHO("Mot"); nb_mots++; } {PUNCT} { nb_punct++; } /* NB : pas les - internes ! */ {BLANC} { } \R { ECHO(); nb_lignes++; } [^] { WARN("Unknown"); }