Я пытаюсь написать программу на C, которая позволит мне получить нужную строку между двумя другими строками, которые будут определены. Чтобы быть более конкретным, мой пример строки
"blahblah<mailto:agent007@example.org>blahblahblah"
и мне нужно иметь возможность извлечь подстроку «agent007» в новую переменную. Я пробовал метод strtok (), но дело в том, что я не могу извлечь токены в новую переменную или массив. Я токенизировал строку, и выражение, которое мне подходит, было бы примерно таким: " если token [i] ==" mailto "&& token [i + 2] ==" example ", то mailAdd = token [i + 1] " (псевдокодовым способом :))
моя программа до сих пор
#include <stdio.h>
#include <string.h>
int main ()
{
char str[] ="blahblah<mailto:agent007@example.org>blahblahblah";
char * tch;
tch = strtok (str,"<:@");
while (tch != NULL)
{
printf ("%s\n",tch);
tch = strtok (NULL, "<:@");
}
return 0;
}
Конечно, любые другие предложения, кроме токенов, будут высоко оценены -