Chars im String modifizieren

Für allgemeine Fragen zur Programmierung mit PureBasic.
Benutzeravatar
Piwo
Beiträge: 27
Registriert: 05.08.2012 22:40

Chars im String modifizieren

Beitrag von Piwo »

Hi zusammen,

In Java beispielsweise haben wir eine charAt(n) Funktion, welche den char an der position n eines strings wiedergibt.
In PB wäre ein äquivalent dessen die Mid()-funktion, die mit den entsprechenden Parametern den selben Effekt hat.
Was ich nun suche ist eine modifizierende Funktion, welche einen char an der stelle n eines strings gezielt verändert, also quasi sowas wie ChangeCharAt(position.i , newchar.c). Diese Funktion sollte nur halt möglichst schnell und effizient arbeiten, hab nur leider keine Ahnung wie ich das bestenfalls angehe... Wäre für einen Rat oder Denkanstoß sehr dankbar :)
Benutzeravatar
Kiffi
Beiträge: 10711
Registriert: 08.09.2004 08:21
Wohnort: Amphibios 9

Re: Chars im String modifizieren

Beitrag von Kiffi »

guck mal, ob das passt:

http://www.purebasic.fr/german/viewtopi ... 93#p299593

Grüße ... Kiffi
a²+b²=mc²
Benutzeravatar
STARGÅTE
Kommando SG1
Beiträge: 7028
Registriert: 01.11.2005 13:34
Wohnort: Glienicke
Kontaktdaten:

Re: Chars im String modifizieren

Beitrag von STARGÅTE »

Was auch sehr einfach und schnell ist, ist ein CharacterArray:

Code: Alles auswählen

Structure CharacterArray
	StructureUnion
		c.c[0]
		s.s{1}[0]
	EndStructureUnion
EndStructure

Define String.s = "Hallo Welt!"

Define *String.CharacterArray = @String

; Auslesen
Debug *String\s[1]
Debug *String\c[1]

; Ändern mit String oder Zahl
*String\s[5] = "-"
*String\c[4] = 'O'

Debug String
PB 6.01 ― Win 10, 21H2 ― Ryzen 9 3900X, 32 GB ― NVIDIA GeForce RTX 3080 ― Vivaldi 6.0 ― www.unionbytes.de
Aktuelles Projekt: Lizard - Skriptsprache für symbolische Berechnungen und mehr
Antworten