Leer- und Satzzeichen aus String entfernen



  • Hallo!

    Sitzte jetzt schon endlos vor google und versuche herauszufinden wie ich aus einem String alle Leerzeichen und Satzzeichen entfernen kann. Ich finde einfach nichts. Der String kann so von der Tastatur eingelesen werden: "Hallo, ich komme aus Berlin!" und der string soll so ausgegeben werden: "HalloichkommeausBerlin".

    Ich hoffe jemand kann mir helfen!

    Vielen Dank im Voraus,

    Sebastian



  • Geh einfach den String durch und kopiere in einen zweiten String, einfach nur die gewünschten Zeichen. Um diese zu ermitteln könntest du zB man: isalnum(3) oder man: isalpha(3) benutzen.



  • Also wir sind zwar nicht im C++ Forum, aber ihr habt das Wort "string" benutzt 😉

    string s = "foo, foo, foo";
    int loc = 0;
    string z = ","; // oder char, oder const char*
    for ( loc = s.find_first_of( z, 0); loc >= 0; loc = s.find_first_of(z, loc + 1 ) )
        s.erase( loc, 1 );
    

    Löcht im string s alle Zeichen, die in string z enthalten sind. Hab das bisher zwar nur mit einem Zeichen getestet (benutzte das Ding immer zum Zerlegen von Strings in Teilstrings anhand von Delimitern, also z.B. ";" als Trennung in CSV-Files).

    Habs jetzt nur schnell aus meinem Kopf zusammengebastelt, sollte aber so ungefähr hinkommen.



  • It0101 schrieb:

    Also wir sind zwar nicht im C++ Forum, aber ihr habt das Wort "string" benutzt 😉

    Könnte es sein, dass das Wort "String" je nach Kontext eine (mehr oder weniger) unterschiedliche Bedeutung hat? Anders gefragt: Wenn du mit deiner Freundin Unterwäsche einkaufen gehst, kaufst du ihr dann auch einen std::string?



  • du etwa nicht? 😉



  • Tim schrieb:

    It0101 schrieb:

    Also wir sind zwar nicht im C++ Forum, aber ihr habt das Wort "string" benutzt 😉

    Könnte es sein, dass das Wort "String" je nach Kontext eine (mehr oder weniger) unterschiedliche Bedeutung hat? Anders gefragt: Wenn du mit deiner Freundin Unterwäsche einkaufen gehst, kaufst du ihr dann auch einen std::string?

    Ein wahrer Programmierer hat keine Freundin!



  • [quote="Tim"]

    It0101 schrieb:

    Anders gefragt: Wenn du mit deiner Freundin Unterwäsche einkaufen gehst, kaufst du ihr dann auch einen std::string?

    nur wenn sie ein 'charwoman' ist.
    🙂



  • fricky schrieb:

    nur wenn sie ein 'charwoman' ist. 🙂

    Und was kaufst Du, wenn sie ein 'float' oder gar 'long double' ist 😕



  • pointercrash() schrieb:

    fricky schrieb:

    nur wenn sie ein 'charwoman' ist. 🙂

    Und was kaufst Du, wenn sie ein 'float' oder gar 'long double' ist

    normale klamotten oder garnix.
    🙂



  • Moin,

    ...
    
    jj = 0;
    
    for( ii = 0; ii < strlen( QUELL_ARRAY ) ii++ )
    {
       if( QUELL_ARRAY != ' ' && QUELL_ARRAY != ',' )
       {
          ZIEL_ARRAY[jj] = QUELL_ARRAY[ii];
          jj++;
       };
    };
    
    ...
    

    Ist zwar nicht optimal und habs auch nicht getestet, sollte aber funktionieren *g*

    Gruß,
    Hagge


Anmelden zum Antworten