Strings bearbeiten...



  • Moin erstmal,
    ich hab hier ein kleines Problem, und zwar habe ich einen String, der etwa so aussieht:
    "C:\\Programme\\C++\"

    Naja, und nun will ich, dass der String so verändert wird, dass er so aussieht:
    "C:\\\Programme\\\C++\\\"

    Es sollen also immer bei "\" zwei weitere "\" eingefügt werden. Ich hab schon vieles versucht, von strtok bis zu strchr, aber irgendwie führte nichts zum Erfolg.
    Ich hoffe, ihr könnt mir da helfen...

    MfG
    :xmas1:


  • Mod

    std::string add_backslash(const std::string& src)
    {
        std::string dest;
        for ( std::string::const_iterator i = src.begin(); i != src.end(); ++i )
            if ( *i == '\\' )
                dest += "\\\\\\";
            else
                dest.push_back( *i );
        return dest;
    }
    


  • #include <String>
    
    std::string strData("C:\\Programme\\C++\\");
    
    sizte_t pos = 0;
    while((pos = strData.find(pos, '\\')) != std::string::npos)
    {
        strData.insert(pos, '\\');
        pos++;
    }
    

    Ist aber nit getestet ⚠


Log in to reply