#include #include #include #define __x_matches 10 int main() { regex_t rx; regmatch_t m[__x_matches]; char *str = "123.45.67.89"; char *restr = "\\([0-9][0-9]*\\.[0-9][0-9]*\\)\\.\\([0-9][0-9]*\\)"; int v1, v2; int i; v1 = regcomp (&rx, restr, 0); v2 = regexec (&rx, str, __x_matches, m, 0); printf ("Vs got are : %i %i\n", v1, v2); for (i=0; i<__x_matches; i++) { printf ("Some %i<->%i matched\n", m[i].rm_so, m[i].rm_eo); } return 0; }