String in einem anderen String suchen

Gast #479888
Lesenswert?
• ▲
▼
Hi @ all!

Ich habe ein Problem. Derzeit habe ich ein großes Array mit einem Inhalt 
einer Datei. Dort will ich einen String suchen. Derzeit suche mit 
strstr(). Das funktioniert auch super.

Der gesuchte String kommt aber mehrmals im Gesamtstring vor. Habe ich 
den ersten gefunden, will ich den 2. finden??

Wie mache isch denn das?? Hab derzeit nur umständliche Lösungen...)

Danke im Voraus

Gruß Robert
#479965
Lesenswert?
• ▲
▼
Das Ergebnis des ersten strstr() Aufrufes (ein Pointer auf char) dem 
naechsten strstr() Aufruf als erstes Argument uebergeben.

In etwa so:

...
char strLangerText[] = "Das ist ein Langer Text und ein sinnloser noch 
dazu";
char strGesuchtesWort[] = "ein";

char *pPosition = NULL;

pPosition = strstr(strLangerText, strGesuchtesWort);
/* erster Fund, pPosition zeigt auf 'e' */

pPosition += strlen(strGesuchtesWort);
/* pPosition zeigt nun auf ' ' */

pPosition = strstr(pPosition, strGesuchtesWort);
/* zweiter Fund */
...

Fehler und Irrtuemer vorbehalten

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren