platzhalter CString
-
hallo, gibt es beim CString sowas wie einen platzhalter?
ich habe z.b. 2 Strings
beide sind gleich lang
der 1. enthaelt irgendwo immer mal wieder ein * zeichen
jetzt mochte ich den string durchgehen und nach * suchen und dann z.b. mit @ ersetzen.
das ist ja nicht das prob
ich mochte jetzt aber beim 2ten string an die gleiche stelle auch ein @ setzen
dort steht aber an der stelle i nicht unbedingt ein *.fuer 1. replace verwenden
fuer 2. was verwenden?oder muss ich den entspechenden char erst loeschen und dann genau an die stelle ein @ machen?
gibts da nichts wiea.Replace("/$", "@"):
-
Exakt diese Methode gibt es bei CString IMHO nicht, aber CString besitzt ein paar Methoden, mit denen das kein Problem darstellen sollte. Replace ist übrigens wirklich die Methode, die du suchst.

MSDN: CString::Replace
-
naja bei replace muss ich ja einen "old" string oder char angeben
also ein bestimmtes zeichen
das will ich aber nicht. sondern das jedes beliebige zeichen/char an der stelle ersetzt wird. da hilft auch die msdn zum thema replace nichts
aber hellsgore hat schon eine von ca. 1000 moeglichkeiten gennant wie man es bewerkstelligt.
-
Das müsstest du dann ja, wie gesagt, mit den anderen Methoden von CString machen (Find). Aber hast ja dein Problem schon gelößt, wie es aussieht.

-
Mit find suchst du nach * Da bekommst du den Index. Dann ersetz du und im 2ten ersetzt du einfach gem. dem Index.