[GELÖST] Zeichen aus einer Zeichenkette löschen?

Übersicht BlitzMax, BlitzMax NG Beginners-Corner

Neue Antwort erstellen

 

CO2

ehemals "SirMO"

Betreff: [GELÖST] Zeichen aus einer Zeichenkette löschen?

BeitragDo, Aug 04, 2011 1:12
Antworten mit Zitat
Benutzer-Profile anzeigen
Hallo,
ich habe ein Problem: Ich habe einen string, bsp.: "Blablablaa". Nun möchte ich das letzte "a" löschen, wie mache ich das? habe es mit
BlitzMax: [AUSKLAPPEN]
Global String1:String = "Blablablaa"
Global String1neu:String = "BlaBlaBlaa" - "a"

Probiert, funktioniert aber nicht, weil man strings nicht subtrahieren kann (Addieren geht komischerweise Wink )

mfG
CO2
mfG, CO²

Sprachen: BlitzMax, C, C++, C#, Java
Hardware: Windows 7 Ultimate 64-Bit, AMX FX-6350 (6x3,9 GHz), 32 GB RAM, Nvidia GeForce GTX 750 Ti
  • Zuletzt bearbeitet von CO2 am Do, Aug 04, 2011 1:32, insgesamt einmal bearbeitet

Midimaster

BeitragDo, Aug 04, 2011 1:21
Antworten mit Zitat
Benutzer-Profile anzeigen
Len(A$) liefert dir die Länge des Strings
Left(A$,n) liefert dir n Zeichen des Strings

und die Kombination macht's dann:
BlitzMax: [AUSKLAPPEN]
NeuString$=Left(String, Len(String)-1 )
 

CO2

ehemals "SirMO"

BeitragDo, Aug 04, 2011 1:31
Antworten mit Zitat
Benutzer-Profile anzeigen
Achso, ok, danke dir Midimaster
mfG, CO²

Sprachen: BlitzMax, C, C++, C#, Java
Hardware: Windows 7 Ultimate 64-Bit, AMX FX-6350 (6x3,9 GHz), 32 GB RAM, Nvidia GeForce GTX 750 Ti
 

PhillipK

BeitragDo, Aug 04, 2011 4:41
Antworten mit Zitat
Benutzer-Profile anzeigen
Da hier anscheinen ein leichter mangel an Funktionswissen vorliegt (nicht böse sein Smile ), verweise ich auch direkt mal auf die Hilfe.

Besonders intressant dürften hier noch sein:
inStr() -> gibt dir den Beginn von einem Suchtext (zb inStr("Peters Katze hat nen Kater.", "katze") -> liefert 8, 9 oder 10 (ich weiß es grade nicht genau) und somit die Zeichenposition.)
Mid() -> gibt dir einen stückchen aus der 'mitte' deines Strings, wahlweise auch bis zum ende. (zb Mid("ABC 123 DEF", 4,3) -> sollte irwas um "123" zurückgeben Smile )
Left() / Right() -> gibt dir eine anzahl Zeichen von "linken/rechten" 'rand' deines Strings.

Hiermit lassen sich nahezu alle Stringmanipulationen vornehmen, die du magst.
Ansonsten einfach wieder melden oder die Hilfe zur brust nehmen Smile

(ps: Tut mir leid das ich bei den Beispielen nichts genaues schreiben konnte. Ich bin grade ein wenig müde *g*)

blackgecko

BeitragDo, Aug 04, 2011 18:37
Antworten mit Zitat
Benutzer-Profile anzeigen
Anstelle der Funktionen Left, Right, usw sollte man in BlitzMax bevorzugt Slices benutzen, weil man dafür nicht das Modul brl.retro braucht. Beispiel:
BlitzMax: [AUSKLAPPEN]
SuperStrict
Local str1:String = "Das ist ein Test. Blub."
Local str2:String = str1[0 .. str1.length-6] 'Die Null kan man auch weglassen
Print str2 'Das ist ein Test.
So long and thanks for all the fish.
Fedora 17 | Windows 7 || BlitzPlus | BlitzMax
Rechtschreibflame GO!!! Deppenapostroph | SeidSeit | Deppenakzent | DassDas | Deppenleerzeichen | TodTot | enzigste.info - Ja, ich sammel die.
 

CO2

ehemals "SirMO"

BeitragDo, Aug 04, 2011 18:40
Antworten mit Zitat
Benutzer-Profile anzeigen
Die Hilfe habe ich schon benutzt, ich fand aber die Funktionen nicht... Embarassed

Außerdem dachte ich, dass sich die funktionen von BB von denen von Bmax unterscheiden.

mfG,
CO2
mfG, CO²

Sprachen: BlitzMax, C, C++, C#, Java
Hardware: Windows 7 Ultimate 64-Bit, AMX FX-6350 (6x3,9 GHz), 32 GB RAM, Nvidia GeForce GTX 750 Ti

BladeRunner

Moderator

BeitragDo, Aug 04, 2011 22:03
Antworten mit Zitat
Benutzer-Profile anzeigen
Das ist auch ab und an so, CO2, daher kann ich wie mein Vorredner nur Slices empfehlen. Dass man in BMax Strings wie arrays indizieren kann ist ein mächtiges Schwert.
Zu Diensten, Bürger.
Intel T2300, 2.5GB DDR 533, Mobility Radeon X1600 Win XP Home SP3
Intel T8400, 4GB DDR3, Nvidia GF9700M GTS Win 7/64
B3D BMax MaxGUI

Stolzer Gewinner des BAC#48, #52 & #92

Neue Antwort erstellen


Übersicht BlitzMax, BlitzMax NG Beginners-Corner

Gehe zu:

Powered by phpBB © 2001 - 2006, phpBB Group