Seite 1 von 1

Etwas wie MID(s,pos,length) auf der linken Seite eines =

Verfasst: 03.01.2005 23:41
von Didelphodon
Hallo!

Gibts eine vorgefertigte PureBasic-Lösung um in einem String an einer bestimmten Stelle einfach einen Text oder ein Zeichen auszutauschen ohne eines umständlichen "Zerschneide_und_wiederzusammenfüg_mit_dem_neuen_Zeichen"-Spieles??

Beispiele aus anderen Sprachen:
- mid(s,10,1) = "a"
- substr(s,10,1) = "a"

Danke im Voraus!

LG
Didelphodon

Verfasst: 04.01.2005 00:34
von jear
Wie wäre es damit.

Code: Alles auswählen

DefType.s a, b, c

a = "Kanalarbeiter"
b = "melr"
a = ReplaceString(a, Mid(a, 3, 6), b, 1, 3)
Debug a

a = "Kanalarbeiter"
b = "nalarb"
c = "melr"
a = ReplaceString(a, b, c, 1, FindString(b, c, 1))
Debug a

a = "Kanalarbeiter"
b = "mel"
a = ReplaceString(a, Mid(a, 3, Len(b)), b, 1, 3)
Debug a

; Modus 2 = "in place" arbeitet nicht wie erwartet !
a = "Kanalarbeiter"
b = "mel"
a = ReplaceString(a, Mid(a, 3, Len(b)), b, 1 | 2, 3)
Debug a

Verfasst: 04.01.2005 09:41
von Didelphodon
Interessanter Ansatz, allerdings triffts irgendwie doch nicht die Einfachkeit, wie dies in anderen Sprachen der Fall ist (wie in C z.B., wo man auf den String wie auf ein Array zugreift - aber eigentlich ist das ja ein direktes Speicheradressieren und das könnt ich ja mit PokeS auch machen (laut gedacht)?!

Ich glaub, ich hab mir gerade selbst geholfen :lol:

LG

Didelphodon