我想用C語言編寫一個解析程序,它將從HTML文檔中獲取特定段落的文本。爲此,我需要在文檔中查找子字符串「name」的所有實例:然而,C函數strstr只能找到子串的第一個實例。我找不到第一個實例以外的任何函數,並且我已經考慮在找到它之後刪除每個子字符串,以便strstr將返回下一個字符串。我無法得到這兩種方法的工作。如何在C中查找所有出現的子字符串
順便說一句,我知道while循環限制了這六次迭代,但我只是測試這個,看看我是否可以讓函數在第一時間工作。
while(entry_count < 6)
{
printf("test");
if((ptr = strstr(buffer, "\"name\":")) != NULL)
{
ptr += 8;
int i = 0;
while(*ptr != '\"')
{
company_name[i] = *ptr;
ptr++;
i++;
}
company_name[i] = '\n';
int j;
for(j = 0; company_name[j] != '\n'; j++)
printf("%c", company_name[j]);
printf("\n");
strtok(buffer, "\"name\":");
entry_count++;
}
}
'的strstr(的strstr(HTML,「名「)+ 1,」name「)'發現第二次出現'」name「'(提供的內部'strstr'沒有返回NULL) – pmg