Visa ett inlägg
Oläst 2005-05-06, 16:20 #3
grazzy grazzy är inte uppkopplad
Klarade millennium-buggen
 
Reg.datum: Mar 2004
Inlägg: 3 471
grazzy grazzy är inte uppkopplad
Klarade millennium-buggen
 
Reg.datum: Mar 2004
Inlägg: 3 471
Hej, i C är det ett litet helvete, du kan använda strtok.
Jag har snart en tenta i c++ (igen ;)) så jag slängde ihop lite kod åt dig som troligen skulle må bra av att nån som faktiskt har en aning om vad de sysslar med tittar på den, men det verkar iaf funka :-)

Kod:
#include <string>
#include <vector>
#include <iostream>

using namespace std;
vector<string> explode(const string& split, const string& str) {
    vector<string> tmpvec;
    int pos,opos;
    pos = 0;
    opos = -split.size();
    do {  
        pos = str.find(split, opos+split.size());
        tmpvec.push_back(str.substr(opos+split.size(),(pos-split.size())-opos));
        opos = pos;
    } while (pos<str.size());
    return tmpvec;
}

int main () {
    string minstrang = "Hej och hå - detta är ett test";
    string split = " ";
    vector<string> minvec;

    minvec = explode(split, minstrang);

    for (vector<string>::iterator is(minvec.begin()); is<minvec.end(); is++) {
        std::cout << *is << std::endl;
    }
}
Tänk på att den här koden är Henrik Ponten-ware, så du måste skicka ett vykort där det står "vart är mina licenspengar?" på till Henrik Pontén om du använder den.

Koden är rätt självförklarande. Om du inte förstår den tycker jag du skall köpa en bok. De är dina vänner.
grazzy är inte uppkopplad   Svara med citatSvara med citat