//шаблон:
char *pattrn="[0-9]{3}";
//сама строка
char *subj="123 321 485 32222, d3d q233 ";
//подготовка шаблона
re=pcre_compile(pattrn, NULL, &errstr, &errof, NULL);
pcre_exec()
Код:
Дальше
Код:
if((pairs=pcre_exec(re, /*f_ext*/0, subj, strlen(subj), 0, PCRE_NOTEMPTY, vector, vec_s))<0)
{
printf("Ошибка! Номер: %i\n",pairs);
}
{
printf("Ошибка! Номер: %i\n",pairs);
}
pcre_exec по идее должна возвращать кол-во найденных подстрок, расположенных по номерам занесенным в vector, но увы при данном шаблоне возвращает только первое совпадение, тоесть pairs всегда равен 1, почему так?
в конструкторе РВ, с тем же шаблоном и строкой находится 5 подстрок
http://www.pcre.ru/eval/%5B0-9%5D%7B3%7D%40%3D%23%3D%40101%40%3D%23%3D%40123%20321%20485%2032222%2C%20d3d%20q233%20/
Подскажите пожалуйста, что делаю не так.
Полный исходник в аттаче.