#1 19. Januar 2010 Zuletzt von einem Moderator bearbeitet: 13. April 2017 [Borland C++ Builder] Mit String-Variablen arbeiten [C++ Tutorial für Borland C++ Builder] Mit String-Variablen arbeiten: Um eine bessere Übersicht zu schaffen, sind die folgenden Dinge farblich gekennzeichnet: Strings: .......... String <Bezeichner> . = Name der String-Variable Stringliteral: ... "<Wert>" .................. = Inhalt des Strings Integer: .......... int <Bezeichner> Kommentare: . // Kommentar Strings deklarieren: Code: String [COLOR="Red"]<Bezeichner>[/COLOR] = [COLOR="SeaGreen"]"<Wert>"[/COLOR]; [COLOR="Blue"]/* Beispiel 1: */[/COLOR] String [COLOR="Red"]strTest[/COLOR] = [COLOR="SeaGreen"]""[/COLOR]; [COLOR="Blue"]// erzeugt einen leeren String[/COLOR] [COLOR="Blue"]/* Beispiel 2: */[/COLOR] String [COLOR="Red"]strTest[/COLOR] = [COLOR="SeaGreen"]"Das ist ein String-Beispiel!"[/COLOR]; Strings zusammenfügen mit dem '+'-Operator: Code: String [COLOR="Red"]<Bezeichner>[/COLOR] = [COLOR="SeaGreen"]"<Wert>"[/COLOR] + [COLOR="SeaGreen"]"<Wert>"[/COLOR]; String [COLOR="Red"]<Bezeichner>[/COLOR] = [COLOR="Red"]<Bezeichner>[/COLOR] + [COLOR="SeaGreen"]"<Wert>"[/COLOR]; String [COLOR="Red"]<Bezeichner>[/COLOR] = [COLOR="Red"]<Bezeichner>[/COLOR] + [COLOR="Red"]<Bezeichner>[/COLOR]; [COLOR="Blue"]/* Beispiel 1: */[/COLOR] String [COLOR="Red"]strTest1[/COLOR] = [COLOR="SeaGreen"]"Hallo"[/COLOR]; String [COLOR="Red"]strTest2[/COLOR] = [COLOR="SeaGreen"]"Welt!"[/COLOR]; [COLOR="Blue"]// "Hallo" + "[Leerzeichen]" + "Welt!" => "Hallo Welt!"[/COLOR] String [COLOR="Red"]strTestGes[/COLOR] = [COLOR="Red"]strTest1[/COLOR] + [COLOR="SeaGreen"]" "[/COLOR] + [COLOR="Red"]strTest2[/COLOR]; [COLOR="Blue"]/* Beispiel 2: */[/COLOR] String [COLOR="Red"]strTest[/COLOR] = [COLOR="SeaGreen"]"Hallo"[/COLOR]; [COLOR="Blue"]// "Hallo" + "[Leerzeichen]Welt!" => "Hallo Welt!"[/COLOR] [COLOR="Red"]strTest[/COLOR] = [COLOR="Red"]strTest[/COLOR] + [COLOR="SeaGreen"]" Welt!"[/COLOR]; Zeichen innerhalb des Strings suchen: Code: int [COLOR="DarkOrange"]<Bezeichner>[/COLOR] = [COLOR="Red"]<Bezeichner>[/COLOR].Pos([COLOR="SeaGreen"]"<Wert>"[/COLOR]); int [COLOR="DarkOrange"]<Bezeichner>[/COLOR] = [COLOR="Red"]<Bezeichner>[/COLOR].Pos([COLOR="Red"]<Bezeichner>[/COLOR]); [COLOR="Blue"]/* Rückgabewert ist '0', wenn Zeichenkette nicht im String enthalten ist */[/COLOR] [COLOR="Blue"]/* Beispiel 1: */[/COLOR] String [COLOR="Red"]strTest[/COLOR] = [COLOR="SeaGreen"]"Das ist ein String-Beispiel!"[/COLOR]; [COLOR="Blue"]// nach "ein" suchen - Rückgabewert ist die Position im String als Integer[/COLOR] int [COLOR="DarkOrange"]iPos[/COLOR] = [COLOR="Red"]strTest[/COLOR].Pos([COLOR="SeaGreen"]"ein"[/COLOR]); [COLOR="Blue"]/* Beispiel 2: */[/COLOR] String [COLOR="Red"]strTest[/COLOR] = [COLOR="SeaGreen"]"Das ist ein String-Beispiel!"[/COLOR]; [COLOR="Blue"]// "ein" einem String zuweisen[/COLOR] String [COLOR="Red"]strSuche[/COLOR] = [COLOR="SeaGreen"]"ein"[/COLOR]; [COLOR="Blue"]// nach 'strSuche' suchen - Rückgabewert ist die Position im String als Integer[/COLOR] int [COLOR="DarkOrange"]iPos[/COLOR] = [COLOR="Red"]strTest[/COLOR].Pos([COLOR="Red"]strSuche[/COLOR]); Zeichen innerhalb des Strings löschen: Code: String [COLOR="Red"]<Bezeichner>[/COLOR] = [COLOR="Red"]<Bezeichner>[/COLOR].Delete([COLOR="DarkOrange"]<Start-Position>[/COLOR], [COLOR="DarkOrange"]<Anzahl>[/COLOR]); [COLOR="Blue"]/* Beispiel 1: */[/COLOR] String [COLOR="Red"]strTest[/COLOR] = [COLOR="SeaGreen"]"Das.ist.kein.String-Beispiel!"[/COLOR]; [COLOR="Blue"]// nach "kein" suchen und einen Buchstaben löschen => "ein"[/COLOR] [COLOR="Red"]strTest[/COLOR] = [COLOR="Red"]strTest[/COLOR].Delete([COLOR="Red"]strTest[/COLOR].[COLOR="DarkOrange"]Pos[/COLOR]([COLOR="SeaGreen"]"kein"[/COLOR]), [COLOR="DarkOrange"]1[/COLOR]); [COLOR="Blue"]/* Beispiel 2: */[/COLOR] String [COLOR="Red"]strTest[/COLOR] = [COLOR="SeaGreen"]"Das.ist.kein.String-Beispiel!"[/COLOR]; [COLOR="Blue"]// nach "kein" suchen[/COLOR] int [COLOR="DarkOrange"]iPos[/COLOR] = [COLOR="Red"]strTest[/COLOR].Pos([COLOR="SeaGreen"]"kein"[/COLOR]); [COLOR="Blue"]// einen Buchstaben löschen => "ein"[/COLOR] [COLOR="Red"]strTest[/COLOR] = [COLOR="Red"]strTest[/COLOR].Delete([COLOR="DarkOrange"]iPos[/COLOR], [COLOR="DarkOrange"]1[/COLOR]); Zeichen innerhalb des Strings ersetzen und einfügen: Code: String [COLOR="Red"]<Bezeichner>[/COLOR][[COLOR="DarkOrange"]<Position>[/COLOR]] = '<einzelnes Zeichen>'; String [COLOR="Red"]<Bezeichner>[/COLOR] = [COLOR="Red"]<Bezeichner>[/COLOR].Insert([COLOR="SeaGreen"]"<Wert>"[/COLOR], [COLOR="DarkOrange"]<Position>[/COLOR]); String [COLOR="Red"]<Bezeichner>[/COLOR] = [COLOR="Red"]<Bezeichner>[/COLOR].Insert([COLOR="Red"]<Bezeichner>[/COLOR], [COLOR="DarkOrange"]<Position>[/COLOR]); [COLOR="Blue"]/* Beispiel 1: */[/COLOR] String [COLOR="Red"]strTest[/COLOR] = [COLOR="SeaGreen"]"Das.ist.ein.String-Beispiel!"[/COLOR]; [COLOR="Blue"]// alle '.' (Punkte) aus dem String durch Leerzeichen ersetzen[/COLOR] while ([COLOR="Red"]strTest[/COLOR].[COLOR="DarkOrange"]Pos[/COLOR]([COLOR="SeaGreen"]"."[/COLOR]) != [COLOR="DarkOrange"]0[/COLOR]) { int [COLOR="DarkOrange"]iPos[/COLOR] = [COLOR="Red"]strTest[/COLOR].Pos([COLOR="SeaGreen"]"."[/COLOR]); [COLOR="Red"]strTest[/COLOR] = [COLOR="Red"]strTest[/COLOR].Delete([COLOR="DarkOrange"]iPos[/COLOR], [COLOR="DarkOrange"]1[/COLOR]); [COLOR="Red"]strTest[/COLOR] = [COLOR="Red"]strTest[/COLOR].Insert([COLOR="SeaGreen"]" "[/COLOR], [COLOR="DarkOrange"]iPos[/COLOR]); } [COLOR="Blue"]/* Beispiel 2: */[/COLOR] String [COLOR="Red"]strTest[/COLOR] = [COLOR="SeaGreen"]"Das.ist.ein.String-Beispiel!"[/COLOR]; [COLOR="Blue"]// alle '.' (Punkte) aus dem String durch Leerzeichen ersetzen[/COLOR] while ([COLOR="Red"]strTest[/COLOR].Pos([COLOR="SeaGreen"]"."[/COLOR]) != [COLOR="DarkOrange"]0[/COLOR]) { int [COLOR="DarkOrange"]iPos[/COLOR] = [COLOR="Red"]strTest[/COLOR].Pos([COLOR="SeaGreen"]"."[/COLOR]); [COLOR="Blue"]// einzelnes Zeichen im String verändern - Zuweisung mit '' (char)[/COLOR] [COLOR="Red"]strTest[/COLOR][[COLOR="DarkOrange"]iPos[/COLOR]] = [COLOR="SeaGreen"]' '[/COLOR]; } String mit einer bestimmten Länge erstellen: Code: [COLOR="Blue"]// Länge eines Strings ermitteln[/COLOR] int [COLOR="DarkOrange"]<Bezeichner>[/COLOR] = [COLOR="Red"]<Bezeichner>[/COLOR].[COLOR="DarkOrange"]Length()[/COLOR]; [COLOR="Blue"]/* Beispiel 1: */[/COLOR] String [COLOR="Red"]strTest[/COLOR] = [COLOR="SeaGreen"]""[/COLOR]; // leerer String [COLOR="Blue"]// solange String-Länge <= (kleiner gleich) 10 ist, '.' (Punkte) hinzufügen[/COLOR] while ([COLOR="Red"]strTest[/COLOR].[COLOR="DarkOrange"]Length()[/COLOR] <= [COLOR="DarkOrange"]10[/COLOR]) { [COLOR="Red"]strTest[/COLOR] = [COLOR="Red"]strTest[/COLOR] + [COLOR="SeaGreen"]"."[/COLOR]; } [COLOR="Blue"]/* Beispiel 2: */[/COLOR] String [COLOR="Red"]strTest[/COLOR] = [COLOR="SeaGreen"]""[/COLOR]; // leerer String [COLOR="Blue"]// 10 Zahlen hinzufügen (0-9) => strTest = "0123456789";[/COLOR] for (int [COLOR="DarkOrange"]i[/COLOR] = [COLOR="DarkOrange"]0[/COLOR]; [COLOR="DarkOrange"]i[/COLOR] < [COLOR="DarkOrange"]10[/COLOR]; [COLOR="DarkOrange"]++i[/COLOR]) { [COLOR="Blue"]// String(<Bezeichner>); wandelt einen Integer in einen String[/COLOR] [COLOR="Red"]strTest[/COLOR] = [COLOR="Red"]strTest[/COLOR] + [COLOR="Red"]String[/COLOR][COLOR="DarkOrange"][COLOR="DarkOrange"](i)[/COLOR][/COLOR]; } Ich hoffe das Tutorial hat euch geholfen! Dank geht an remaL! 1 Person gefällt das. + Multi-Zitat Zitieren