Ergebnis 1 bis 4 von 4
  1. #1
    Bad Times Virus
    Registriert seit
    14.03.2009
    Beiträge
    579

    Standard [C++]Dynamisches Stringsplitting

    Da ja hier keiner was macht und das auch was eher nützliches ist...
    Die Aufgabe ist einen STL String in seine einzelen Teile zu splitten. Der Gebauch von Vektoren ist SEHR zu empfehlen.
    Viel spaß
    ich hab ne denkblockade nehmt es nicht als perfekte lösung:
    Geändert von wacked (06.09.2009 um 21:16 Uhr)

  2. #2
    CIH-Virus Avatar von -[RiDER]-
    Registriert seit
    05.01.2007
    Beiträge
    496

    Standard

    Zitat Zitat von wacked Beitrag anzeigen
    Die Aufgabe ist einen STL String in seine einzelen Teile zu splitten.
    Was denn fuer Teile???
    Und was ist mit strtok() und strsep()?
    Sorry, komme aus der C-Ecke

    GreetZ jmcr

  3. #3
    Der mit Anatidaephobie Avatar von blackberry
    Registriert seit
    11.07.2008
    Beiträge
    2.350

    Standard

    @RiDER
    Teile = (in diesem Fall) tokens
    Also im Grunde eine Schleife strtok() und nur einem deliminater/Trennzeichen, wobei die generierten Tokens in einem Vektor abgespeichert werden sollen...

    @wacked
    Geändert von blackberry (07.09.2009 um 16:40 Uhr)

    PDFTT cr3w a.E. — ReiDC0Re, lindor, Sera, berry
    please do feed the trolls crew and elk
    Ehrenwerte Mitglieder im Ruhestand: OpCodez, SFX.
    "Was sich blackberry gerade denkt" — Vorsicht! Frei laufender Wahnsinn!
    Zitat von fuckinghot19: "PS: Blackberry ist auf FH der Trollkönig ^^."
    An dieser Stelle danke ich all meinen Fans und Hatern gleichermaßen ^.^

  4. #4
    Wicked Wonderland Avatar von aL1ien
    Registriert seit
    08.07.2007
    Beiträge
    434

    Standard

    Code:
    vector<string> getSeparateStringsFromDelimString( const string& s, const string& f ) 
    {
        vector<string> temp;
        if ( f.empty() ) 
        {
            temp.push_back( s );
            return temp;
        }
        typedef string::const_iterator iter;
        const iter::difference_type f_size( distance( f.begin(), f.end() ) );
        iter i( s.begin() );
        for ( iter pos; ( pos = search( i , s.end(), f.begin(), f.end() ) ) != s.end(); ) {
            temp.push_back( string( i, pos ) );
            advance( pos, f_size );
            i = pos;
        }
        temp.push_back( string( i, s.end() ) );
        return temp;
    }
    
    string getStringWithDelimFromVector( vector<string> stringWithouthDelim,string delim ) 
    {
        string stringWithDelim;
        if(stringWithouthDelim.size() == 0)
            return stringWithDelim;
        for(int i = 0; i < stringWithouthDelim.size(); i++)
        {
            stringWithDelim += stringWithouthDelim[i];
            if( i != (stringWithouthDelim.size()-1) )
                stringWithDelim += delim;
        }
        return stringWithDelim;
    }
    Tu peut t'le mettre dans l'cul.

Stichworte

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •