Bestimmte Zeichen in einem String ersetzen (C++)

Chris2130

Well-known member
ID: 308573
L
13 Januar 2008
527
24
Also ich suche einen code der bestimmte Zeichen in einem String ersetzt.
Mit replace geht das ja anscheinend nicht, da ich dazu immer nur gefunden habe, dass man angeben muss ab wo und wie lang.

Ich möchte aber bestimmte Zeichen durch andere ersetzen.

Beispiel:

Im String steht ababab und ich möchte jetzt alle a durch x ersetzen. Dann soll am Ende xbxbxb rauskommen.

Hoffe das ist so verständlich genug. Kann mir da einer weiterhelfen?
 
PARDON.... war bei PHP

scheinst es aber mit ner vorherigen Suche und ner schleife machen zu müssen. Hier wurde darüber geredet
 
Lauf halt einfach drüber und wenn das Zeichen 'a' is, dann ersetz es durch 'x'.
Isn Zweizeiler ;)
 
Pseudocode:
PHP:
while(*string++ != 0)
  if(*string == 'a') *string = 'x';
 
Also bei mir kamen irgentwie 3 Fehlermeldung^^ ich habe jetzt den normalen String genommen, aus der Header-Datei string.

Fehlermeldungen

"main.cpp": E2096 Ungültige Strukturoperation in Funktion main() in Zeile 34
"main.cpp": E2093 'operator*' ist im Typ 'string' für Argumente desselben Typs nicht implementiert in Funktion main() in Zeile 35
"main.cpp": E2093 'operator*' ist im Typ 'string' für Argumente desselben Typs nicht implementiert in Funktion main() in Zeile 35

Der Code
PHP:
string test;
test = "ababab";
while(*test++ != 0)
  if(*test == 'a') *test= 'x';
 
schon mal mit C++ gearbeitet?

theHacker sein Code ist für den Typ char* und nicht für String.....
rtfm... find() und replace() würd ich mal,.... oder c_str() und tH's Lösung....
 
...

Ehhm wenn ich mich nicth ganz irre hat the hacker so ziemlich recht... nur er hat Pseudocode gepostet... du musst das noch in richtiges C/C++ umwandeln.

Es is nicht gerne gesehen, wenn man den Code schon fertig posted... die Variante mit dem Pseudocode gibt dir einen Tipp aber du musst dann doch noch etwas arbeiten... :)

Falls es garnicht klappt, kann ich dir den Code posten (allerdings nur in plain C), aber versuche es lieber nochmal selbst, wie gesagt macht man das nicht so gerne ;)

MfG
 
Zuletzt bearbeitet: