求指教:_PCRE库函数中,pcre_exec()的返回值是什么意思? *ovector数组的元素又是代表什么意_?
#include
#include
#include
#include
void main()
{
pcre *code;
char *src="Tel: 18701252677 18829696789 17867890987 E-mail:gsxu@sonicom.com.cn";
char *pattern="(([+86]|[86])?[0-9]{11})";
int i=0;
int ovector[15]={0};
int rc,exec_offset=0;
const char *sub;
const char *errptr;
const char **listptr;
int erroffet;
char temp[512]={0};
code=pcre_compile(pattern,0,&errptr,&erroffet,NULL);
//code=pcre_compile(pattern,PCRE_DOTALL,&errptr,&erroffet,NULL);
rc=pcre_exec(code,NULL,src,strlen(src),0,PCRE_BSR_ANYCRLF,ovector,15);
printf("match:%d\n",rc);
printf("start:%d end:%d\n",ovector[2],ovector[3]);
if(rc>0)
{
for(i=0;i++;i<rc)
{
pcre_get_substring(src,ovector,rc,0,&sub);/////////////???????????????????????????????????
printf("%s\n",sub);
//exec_offset=ovector[i];
//i++;
pcre_free_substring(sub);
}
}
pcre_get_substring_list(src,ovector,rc,&listptr);
printf("%s\n",*listptr);
pcre_free_substring_list(listptr);
free(code);
}
为什么数组ovector的元素{5,16,5,16,-1,.......}???????????????