#include #include int main() { regex_t rx; char *pat = "(?:([0-2]?\\d{1,2})\\.){3}([0-2]?\\d{1,2})"; char *str = "123.45.67.89"; regmatch_t match [6]; int i; regcomp (&rx, pat, 0); regexec (&rx, str, 6, match, 0); for (i=0; i<6; i++) { printf ("RX matched from %i to %i\n", match[i].rm_so, match[i].rm_eo); } return 0; }