#ifndef __REGEXP_H #define __REGEXP_H #ifndef __STDTYPES_H #include #endif #ifndef NULL #include #endif // Composizione delle regular expression: // ------------------------------------- // - '*' sostituisce una qualunque sottostringa (0 o pił caratteri) // - '?' sostituisce un carattere qualunque (necessariamente presente) // - [RANGE] sostituisce un carattere presente nel RANGE specificato // I range si compongono di singoli caratteri o di sottoinsiemi di caratteri, // indicati con un carattere iniziale, un segno meno ('-') e un carattere // finale. Esempio [0-9a-fL] comprende i caratteri dallo '0' al '9', dalla 'a' // alla 'z' e la lettera 'L'. I range possono essere prefissati da '!' o // '^' per indicare che l'insieme dei caratteri specificati sono esclusi // e non inclusi. Esempio [!jkwxy] indica la sostituzione di qualunque // carattere tranne 'j', 'k', 'w', 'x', 'y' e 'z'. // Per specificare nei pattern gli stessi metacaratteri con cui si formano i // pattern basta prefissarli con l'escape '\'. Esempio [\[\]] sostituisce un // carattere di parentesi quadra aperta o chiusa. bool match(const char *pat, const char *str); // ritorna TRUE se il pattern (primo parametro) e la stringa (secondo) coincidono #endif