Problem beim String splitten [GELÖST]
Übersicht

BadDeathBetreff: Problem beim String splitten [GELÖST] |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Nabend, da ich hier nur Split-Funktionen nur für BlitzMax fand, und für meine Zwecke so umfrangreich waren, habe ich mich selbst dran gesetzt.
Mein Problem: Ich möchte eine eine Zeile aus einer Textdatei einlesen, was ja auch ohne Probleme geht, aber das splitten geht nicht. Eine Zeile enthält nur zwei Teile, getrennt durch ein "|" - also zum Beispiel "Test|1234". Nun geht das mit Zahlen auch recht gut, aber wenn Buchstaben drin sind, verschluckt meine Funktion gleich alles danach, obwohl Zeichen wie + oder - auch nur am Anfang eines Teils stehen dürfen, aber nicht mitten drin... Hier der Code - hoffentlich könnt ihr mir helfen: Code: [AUSKLAPPEN] Zeile$="5588|-112259"
Function Links(Stri$) For Lef = 1 To Len(Stri$) If Mid(Stri$,Lef,1) <> "|" Then StrLeft$ = StrLeft$ + Mid(Stri$,Lef,1) Else Exit End If Next Return Stri$ End Function Function Rechts(Stri$) For Rech = 1 To Len(Stri$) If Mid(Stri$,Rech,1) = "|" Then Stri$ = Mid(Stri$,rech+1,Len(Stri$)) Next Return Stri$ End Function Print Links(Zeile$) Print Rechts(Zeile$) WaitKey End |
||
- Zuletzt bearbeitet von BadDeath am So, Feb 03, 2008 0:11, insgesamt einmal bearbeitet
![]() |
kriD |
![]() Antworten mit Zitat ![]() |
---|---|---|
schau dir vielleicht mal den befehl "Instr" an.
er liefert dir die zeichenposition eines zeichens zurück, insofern es in dener zeile enthalten ist. also: Code: [AUSKLAPPEN] left$=Left (Zeile$, Instr (Zeile$,"|"))
right$=Mid (Zeile$, Instr (Zeile$,"|"),len (Zeile$)) MfG kriD |
||
Wenn ich du wäre, wäre ich lieber ich! |
BadDeath |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Danke für die schnelle Hilfe, das viel mir garnicht ein mit InStr, da ich öfter mit VB 6 arbeite und Split gleich drin ist ^^
Ich musste nur noch 2 Kleinigkeiten ändern: Code: [AUSKLAPPEN] Zeile$="558a8|112259"
Print Left(Zeile$, Instr (Zeile$,"|")-1) Print Mid(Zeile$, Instr (Zeile$,"|")+1,Len (Zeile$)) WaitKey End Danke nochmal |
||
Übersicht


Powered by phpBB © 2001 - 2006, phpBB Group