Right oda so
Übersicht

![]() |
ozzi789Betreff: Right oda so |
![]() Antworten mit Zitat ![]() |
---|---|---|
Hi
Ich möchte aus nem String ne "info" rauslesen also form$=Right$(name$,3) If form$ = "/red" Was so sehr gut geht . Doch wen die Beschreibungen nach dem / länger sind als 3 buchstaben geht das ja ned. Wie kann ich jetz genau beim / anfangen ? Thx oz |
||
0x2B || ! 0x2B
C# | C++13 | Java 7 | PHP 5 |
![]() |
XeresModerator |
![]() Antworten mit Zitat ![]() |
---|---|---|
mit LEN die länge des Strings feststellen und dann von rechts länge-1 auslesen. | ||
Win10 Prof.(x64)/Ubuntu 16.04|CPU 4x3Ghz (Intel i5-4590S)|RAM 8 GB|GeForce GTX 960
Wie man Fragen richtig stellt || "Es geht nicht" || Video-Tutorial: Sinus & Cosinus THERE IS NO FAIR. THERE IS NO JUSTICE. THERE IS JUST ME. (Death, Discworld) |
ChristianK |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Mit "Instr" kannst du die Position des Zeichens im String herausfinden. Also einfach position = Instr( name$, "/" ) | ||
AdvanceLcd
Intel Core 2 Duo 3.2 GHz, 4 GB RAM, GeForce 8800 GTX | MacBook Pro 15,4″ Intel Core 2 Duo 2.4 GHz, 2 GB RAM, GeForce 8600M GT |
![]() |
ozzi789 |
![]() Antworten mit Zitat ![]() |
---|---|---|
location = Instr( name$,"/",1)
form$=Left$(name$,location) Ich dachte eher so wat ![]() Edit : sry zu spät Also wie genau ![]() |
||
0x2B || ! 0x2B
C# | C++13 | Java 7 | PHP 5 |
![]() |
Silver_Knee |
![]() Antworten mit Zitat ![]() |
---|---|---|
ich für meinen teil nutze weder Right noch left. Ich nutze wenn dann MID da ist nämlich beides drinne:
MID(text,start,[länge=bis zum ende]) Bei deinem Problem Speziell würde ich mir schnell aus irgendeinem Projekt von mir Between holen. Code: [AUSKLAPPEN] Function Between$(s$,b$,e$,fl=1)
f=Instr( s,b,fl )+Len(b) l=Instr( s,e,f ) r$=Mid( s,f,l-f) Return r End Function Between(text,find1,find2,[start=1])=Zwischen find1 und find2 In deinem Fall: Code: [AUSKLAPPEN] com$=Between(name+" ","/"," ");Gib zurück was zwischen / und dem nächsten Leerzeichen steht.
;damit auch wirklich ein leer zeichen da ist, hab ich an name noch eins dran gehängt. if com$="red" .... if com$="green"... |
||
![]() |
ozzi789 |
![]() Antworten mit Zitat ![]() |
---|---|---|
Danke das gibt Sinn .. doch ich kann ned recht umsetzn -.-
Code: [AUSKLAPPEN] Graphics 800,600,16,2
filein = ReadFile("c:\test.txt") Repeat name$ = ReadLine (filein) form$=Between (name$+" ","/"," ") If form$ = "red" Color 255,0,255 Print name EndIf If form$ = "blue" Color 0,255,0 Print name EndIf If form$ = "green" Color 0,255,0 Print name EndIf If Not form$ = "green" Or form$ = "red" Or form$ ="blue" Print name Until Eof(filein) = 1 WaitKey CloseFile(filein) End Function Between$(s$,b$,e$,fl=1) f=Instr( s,b,fl )+Len(b) l=Instr( s,e,f ) r$=Mid( s,f,l-f) Return r End Function Hia die vereinfachte Version.. was mache ich falsch ? Man nix geht ![]() |
||
0x2B || ! 0x2B
C# | C++13 | Java 7 | PHP 5 |
![]() |
skey-z |
![]() Antworten mit Zitat ![]() |
---|---|---|
zeig uns doch mal den inhalt der datei, dann kann man vielleicht ehr sagen, den im code sehe ich im moment keinen Fehler | ||
Awards:
Coffee's Monatswettbewerb Feb. 08: 1. Platz BAC#57: 2. Platz |
![]() |
ozzi789 |
![]() Antworten mit Zitat ![]() |
---|---|---|
Test 123 red/red
Testytest 234 blue/blue lol 345 green/green So sieht die Txt datei aus EDIT: Test 123 red / red Testytest 234 blue / blue lol 345 green / green bin ich blöd so wär richtig ![]() ![]() Tortzdem danke ![]() |
||
0x2B || ! 0x2B
C# | C++13 | Java 7 | PHP 5 |
![]() |
Silver_Knee |
![]() Antworten mit Zitat ![]() |
---|---|---|
wie solls denn am ende aussehen? | ||
![]() |
ozzi789 |
![]() Antworten mit Zitat ![]() |
---|---|---|
Silver_Knee hat Folgendes geschrieben: wie solls denn am ende aussehen?
Wie meinst du das jetz ? |
||
0x2B || ! 0x2B
C# | C++13 | Java 7 | PHP 5 |
![]() |
Eingeproggt |
![]() Antworten mit Zitat ![]() |
---|---|---|
ozzi, Ich würd sagen du hast die "Between" Funktion falsch angewandt. Da ich aber nich tweiß, wie es richtig gehört, hier mal meine Lösung. So gehts:
Code: [AUSKLAPPEN] form$=Trim(Right(name$,Len(name$)-Instr(name$,"/")))
mfG, Christoph. |
||
Gewinner des BCC 18, 33 und 65 sowie MiniBCC 9 |
![]() |
ozzi789 |
![]() Antworten mit Zitat ![]() |
---|---|---|
Danke
Habs jetz so gelöst Code: [AUSKLAPPEN] form$=Between (name$+" "," / "," ") location = Instr( name$,"/",1)-1 If location < 1 Then location = 0 |
||
0x2B || ! 0x2B
C# | C++13 | Java 7 | PHP 5 |
Übersicht


Powered by phpBB © 2001 - 2006, phpBB Group