String nach dem 6. auftreten eines Zeichens durchsuchen

kritza

Grünschnabel
Hallo!

Hmm... ehrlich gesagt ist mir die Frage n bissl peinlich ^^... aber EGAL!
hab auch schon hier im forum und bei google gesucht, aber komischerweise finde ich nix, dass ich jetzt doch so verzweifelt bin und selber nen thread aufmachen... so... genug bla bla..


Also, ich habe eine Datei. In dieser Datei stehen Zeilenweise mehrere Einträge die durch Semikolon getrennt sind:

NP;bla;blub; haste nicht gesehen; 13; 05; 2008
NP;bla;blub; haste doch gesehen; 13; 05; 2008
NP;bla;blub; haste schon gesehen; 13; 05; 2008


Die Datei lese ich jetzt aus und speichere die in ein mehrdimensionales Array. Array[Zeile - z.B. 1][Zeileninhalt - z.B. NP; BLA;...]

Jetzt würde ich gerne die Zahl 13 kriegen... also nach dem 4. Semikolon, aber vor dem 5.


Wie mach ich das ?

Ich komme nur an 2008 mit:
Code:
ptr = strrchr(sTextdatei[0], ';');
ptr = strtok(ptr, ";");

Ich vermute mit strchr in ner schleife, die dann irgendwie mit rekursion arbeitet!... KA.. aber ich raff das irgendwie nicht. Glaube aber auch nicht, dass das so schwer ist...


HILFE

Danke :)
 
Hab das problem gelöst..
Das geht ja eigentlich ganz einfach mit der Funktion strtok(); !

einfach als erster parameter die zu durchsuchende Variable und als zweiten das zusuchende Zeichen.

Code:
  i = 0;
  ptr = strtok(sTextdatei[0], ";");
  while(ptr != NULL)
  {
    strcpy(sDatensatz[i], ptr);
    ptr = strtok( NULL, ";");
    i++;
  }

  printf("\n\n");
  printf("Die 1. Referenznummer:  %s", sDatensatz[6]);
  
  printf("\n\n");
  printf("Die 2. Referenznummer:  %s", sDatensatz[7]);

naja... vllt konnte ich ja dadurch jemanden helfen


erledigt! :)
 
C oder C++?

Sieht nach C aus ... hmm ... einfach durchgehen ... dabei zählen wie oft du dann jetzt ';' hattest ... war es schon 6 mal, dann brichst du die Schleife ab.
 
Zurück