- lexikai elemzés (L3) - szintaktikus elemzés (L2) - szemantikus elemzés - kódgenerálás int i; string j; j = i; abc* ab abc (abc)* - abc abcabc abcabcabc (abc|de*f)* - abc df def deef abcdef (abc|de+f)+ nem: - nem: abcdf [ac-fhz] a c d e f h z [^ac-fhz] bármi, kivéve a felsoroltak a.b aab abb a!b a?b \. "." [.] egy pont .? - bármi .* (.|\n)* (a|) a? \" ["] "\"" (abc){34} (abc){3,} (abc){3,7} .. aa|bb|........ "baaaaaac".replace("(a+)", "x\\1y") -> bxaaaaaayc fehér szóközök (legalább egy a következőkből: szóköz, tab, sorvége jel) (\ |\t|\n)* (" "|\t|\n)* [ \t\n]* [a-z] [A-Z] [a-Z] ez nem jó [a-zA-Z\[\]] [zxcvbnmasdfghjklqwertyuiopZXCVBNMASDFGHJKLQWERTYUIOP] [0-9]* szam [0-9]+ 0123456789 0|1|2|3|4|5|6|7|8|9 0|[1-9][0-9]* 0|[1-9][0-9]+ kicsit más! 0|[1-9]{szam} [+-]{szam} elojelesszam (+|-){szam} {elojelesszam}[.]{szam} {elojelesszam}[.]{szam}? 12. 12.0 .325 {szam}\.{szam} {szam}"."{szam} \".*\" """ \"[^"]*\" """ kizárt de "\"" is kizárt \"([^"]|\\\")*\" "\\"" \"([^"\\]|\\\"|\\\\)*\" ["]["]