Вечер, на который каждый может надеяться, что вы можете помочь вам. Я пытаюсь найти ответ на эту проблему. Мне нужно прочитать данные из строки ниже, выполнив поиск тегов. i.e IZTAG UKPART и т. д. Однако код, который я использую, не годится, поскольку он хранит только 1-ю часть его, например UKPART = 12999, и пропускает -0112. Есть ли лучший способ поиска строк?Получить определенные части из строки, используя C
UPDATE SO FAR.
#include <stdio.h>
#include <string.h>
#include <windows.h>
int main()
{
// in my application this comes from the handle and readfile
char buffer[255]="TEST999.UKPART=12999-0112...ISUE-125" ;
//
int i;
int codes[256];
char *pos = buffer;
size_t current = 0;
//
char buffer2[255];
if ((pos=strstr(pos, "UKPART")) != NULL) {
strcpy (buffer2, pos); // buffer2 <= "UKPART=12999-0112...ISUE-125"
}
printf("%s\n", buffer2);
system("pause");
return 0;
}
теперь работает НО ВЕРНУТЬ ВЕСЬ STRING КАК ВЫХОД МНЕ НУЖНО ТОЛЬКО ВЕРНУТЬ UKPART НАПРИМЕР БЛАГОДАРЯ ПОКА :-)
Хотя это не полностью определено, что вы хотите, расщепление с [регулярное выражение] (http://en.wikipedia.org/wiki/Regular_expression) является более гибким. – tiwo
@tiwo: отличное предложение. Вот еще одна ссылка: http://pubs.opengroup.org/onlinepubs/009695399/functions/regcomp.html – paulsm4
Ваш вопрос не имеет смысла без кода, поэтому я вернул его удаление. – icktoofay