"explode string"

Übersicht BlitzBasic Allgemein

Neue Antwort erstellen

 

erforderlich

Betreff: "explode string"

BeitragSa, Apr 16, 2005 13:29
Antworten mit Zitat
Benutzer-Profile anzeigen
Tach!
Kurz un knappe Frage:
BlitzBasic: [AUSKLAPPEN]

level/level.b3d ;Leveldatei
3 ;Türen - anzahl

wie kann ich nur den Teil vor der Bezeichnung herausbekommen?
Bei PHP gab es eine funktion namens explode string oder so. Eine wie diese habe ich aber in BB3D noch nich gefunden...Denn diese unterteilt einen String.. z.B.
anstatt: "ich.war.da"
-> "ich"
-> "war"
-> "da"
wenn das möglich wäre, wäre der Code schön überschaubar und könnte trotzdem noch eingelesen werden.

Ich lade die Daten für die Eigenschaften meiner Map rein. damit ich hinterher nich in der Datei verloren gehe, will ich halt eine bezeichnung am Rand...
 

Dreamora

BeitragSa, Apr 16, 2005 13:32
Antworten mit Zitat
Benutzer-Profile anzeigen
Mit diesen Befehlen geht das eigentlich problemlos:

http://www.blitzbase.de/menu/2r.htm
Ihr findet die aktuellen Projekte unter Gayasoft und könnt mich unter @gayasoft auf Twitter erreichen.
 

noir

BeitragSa, Apr 16, 2005 13:33
Antworten mit Zitat
Benutzer-Profile anzeigen
um einen string zu zerlegen musst du dir halt ein eigene kleine routine schreiben, bb stellt folgende funktionen bereit: mid, left, right, instr mehr brauchst du nicht. oder such mal im forum.. da gibts einige beispiele..
Fragt und man wird euch helfen

Das Alternativ BlitzBasic-Forum: FreeCoder
Einfach chatten: BlitzChat
Code&Text schnell und einfach pasten: FreePasting
 

erforderlich

BeitragSa, Apr 16, 2005 14:12
Antworten mit Zitat
Benutzer-Profile anzeigen
Nein, sry, das isses nich.
Wenn ich z.B. den String "level/level.b3d" habe, dann müsste ich erst Zählen wie viele Zeichen der hat und das dann auch noch eingeben...
nee das muss nich sein.
kann man nich was eigenes schreiben wo der immer alles zwischen "" sucht?
Also z.B.:
"level/level.b3d" ;level
"3" ;türen
"..." ;sonstiges

das müsste ein weg sein.. oder so:
Code: [AUSKLAPPEN]
;level
"level/level.b3d"
;türen
3
;sonstiges
"..."


un dann:
Code: [AUSKLAPPEN]
b =  ;anzahl der Zeilen ermitteln
For i=0 to b step 2
 level_objekt = readline(datei$)
next


so das der immer jede 2. Zeile liest...

was meint ihr?
 

noir

BeitragSa, Apr 16, 2005 14:16
Antworten mit Zitat
Benutzer-Profile anzeigen
erforderlich hat Folgendes geschrieben:
Nein, sry, das isses nich.
Wenn ich z.B. den String "level/level.b3d" habe, dann müsste ich erst Zählen wie viele Zeichen der hat und das dann auch noch eingeben...
nee das muss nich sein.
kann man nich was eigenes schreiben wo der immer alles zwischen "" sucht?
Also z.B.:
"level/level.b3d" ;level
"3" ;türen
"..." ;sonstiges

das müsste ein weg sein.. oder so:
Code: [AUSKLAPPEN]
;level
"level/level.b3d"
;türen
3
;sonstiges
"..."


un dann:
Code: [AUSKLAPPEN]
b =  ;anzahl der Zeilen ermitteln
For i=0 to b step 2
 level_objekt = readline(datei$)
next


so das der immer jede 2. Zeile liest...

was meint ihr?


man... du musst gar nichts selber zählen *lool*
dafür gibt es Len und zum suchen nach einem zeichen nimmst du instr.
schau dir halt mal gründlich die OH an, Dreamora hat dir doch sogar einen direkt link gegeben....
Fragt und man wird euch helfen

Das Alternativ BlitzBasic-Forum: FreeCoder
Einfach chatten: BlitzChat
Code&Text schnell und einfach pasten: FreePasting

Hubsi

BeitragSa, Apr 16, 2005 14:18
Antworten mit Zitat
Benutzer-Profile anzeigen
BlitzBasic: [AUSKLAPPEN]
bla$=\"level/tralala.xyz\"
newstring=Left$(bla$,Instr(bla$,\"/\"))
Mehr ist es nicht wenn ich dich richtig verstanden habe Very Happy
Den ganzen Doag im Bett umanandflagga und iaz daherkema und meine Hendl`n fressn...

Alfadur

BeitragSa, Apr 16, 2005 14:20
Antworten mit Zitat
Benutzer-Profile anzeigen
du hast dir die befehle garnicht angeschaut oder? mit mid und instr kannste doch genau das machen ...

du liest jede zeile aus, speicherst die in dem string zeile$, ";" ist dein trenner ... dann machste einfach ...

level$ = mid(zeile$,0,instr(zeile$,";"))

damit werden alle zeichen vom anfang der zeile bis zum ersten auftauchen von ";" kopiert...
A Cray is the only computer that runs an endless loop in less than four hours.
 

erforderlich

BeitragSa, Apr 16, 2005 14:23
Antworten mit Zitat
Benutzer-Profile anzeigen
Embarassed ...das is ja schon peinlich... Embarassed
Danke! Laughing
Code: [AUSKLAPPEN]

map\mapfile = ReadFile("map.ini")
map\map_objekt$=ReadLine$(map\mapfile)
map\map_objekt$=Left$(map\map_objekt$,Inst(map\map_objekt$,":"))
map\map_objekt$=Mid$(map\map_objekt$,1,In(map\map_objekt$,":")-1)

Neue Antwort erstellen


Übersicht BlitzBasic Allgemein

Gehe zu:

Powered by phpBB © 2001 - 2006, phpBB Group