Rset und LSet problem

Anfängerfragen zum Programmieren mit PureBasic.
Benutzeravatar
netvampire
Beiträge: 9
Registriert: 13.06.2006 13:16

Rset und LSet problem

Beitrag von netvampire »

Hallöle ihr puren Basicer :D

Also ich hab mir gerade purebasic gekauft, weil ich dachte das es ein Bug in der Demo ist, aber dem ist anscheinden nicht so, also nehme ich mal an ich hab was nicht verstanden.

RSet und LSet sind ja zum verlängern bzw. kürzen von Strings da. Nun folgendes Beispiel was mich total verwirrt:

String.s = "<test>commando parameter"
jetzt will ich das "<test>" vorn wegcutten, das der neue String einfach nur "commando parameter" ist. Also einfach:
cuttedstring.s = RSet(String, 6)
Nun Problem: der String heißt jetzt "<test>", also das falsche weggecuttet und das ding hat also die gleiche Funktion wie Mid().
Kurz gedacht und dann mal das selbe mit Lset() gemacht und noch mehr verwundert: exakt das gleiche Ergebnis wie bei RSet.

Ich bin echt verwirrt und frage mich, was ich da übersehen hab...

Bitte lasst mich nicht dumm sterben :mrgreen:
Jilocasin
Beiträge: 665
Registriert: 13.05.2006 16:04
Kontaktdaten:

Beitrag von Jilocasin »

Die Hilfe zu RSet hat geschrieben: Platziert den 'String$' an den rechten Rand des Zielstrings und füllt diesen mit Leerzeichen ("Spaces") auf, um die angegebene 'Laenge' zu erreichen. Der optionale Parameter 'Zeichen$' kann benutzt werden, um anstelle der Leerzeichen ein anderes Zeichen zu verwenden. Ist der String länger als die angegebene 'Laenge', wird er - beginnend von links - auf 'Laenge' Zeichen gekürzt.

Beispiel:
Ergebnis$ = RSet("R", 8) ; Ergebnis$ ergibt: " R"
Ergebnis$ = RSet("R", 8, "-") ; Ergebnis$ ergibt: "-------R"
Ergebnis$ = LSet("LongString", 4) ; Ergebnis$ ergibt: "Long"
Du bräuchtest entweder...

Ergebnis$ = RemoveString(DEINSTRING,"<test>")

oder..

Ergebnis$ = Right(DEINSTRING,Len(DEINSTRING)-6)

...
korrigiert mich bitte, falls ich mich irre.. :wink:
Bild
Benutzeravatar
PureLust
Beiträge: 1145
Registriert: 21.07.2005 00:02
Computerausstattung: Hab aktuell im Grunde nur noch 'nen Lenovo Yoga 2 Pro im Einsatz.
Wohnort: am schönen Niederrhein

Beitrag von PureLust »

Hallo NetVampir, ...

Du scheinst RSet() und LSet() etwas mit Left() und Right() verwechselt zu haben.


Den Befehl den Du im Grunde suchst wird aber vermutlich: Mid() sein.

Ergenis.s = Mid("<test>commando parameter", 7, 99999)

Gruß, PL.
[Dynamic-Dialogs] - komplexe dynamische GUIs einfach erstellen
[DeFlicker] - Fenster flimmerfrei resizen
[WinFX] - Window Effekte (inkl. 'durchklickbares' Window)
Benutzeravatar
netvampire
Beiträge: 9
Registriert: 13.06.2006 13:16

Beitrag von netvampire »

ahh, Right! Na das sieht ja sehr gut aus! Kann mir trotzdem jemand noch erklären warum das mir Rset und Lset nict geht? Laut doku sollen die doch den String genauso cutten können...

Edit: Oh shit, wer lesen kann ist klar im vorteil :D Das steht ja bei beiden in der Doku: "Ist der String länger als die angegebene 'Laenge', wird er - beginnend von links - auf 'Laenge' Zeichen gekürzt. "
Hmm, war es von blitzbasic und co so gewohnt, da ist es anders.

Kann man das an die Purebasic-Entwickler weiterleiten, das die das bei RSet auf Rechts abändern, damit ich weiter meinen Gewohnheiten fröhnen kann? :lol:

@purelust: Hatte schonmal mid, aber wollte einfach den String immer mehr einkürzen, um ihn auszuwerten. Hat mir mehr gefallen ;)
Jilocasin
Beiträge: 665
Registriert: 13.05.2006 16:04
Kontaktdaten:

Beitrag von Jilocasin »

netvampire hat geschrieben:Kann man das an die Purebasic-Entwickler weiterleiten, das die das bei RSet auf Rechts abändern, damit ich weiter meinen Gewohnheiten fröhnen kann?
Oh jaaa... und bitte bei 4.1

Code: Alles auswählen

MakeMeARealGoodGame(filenams.s)
nicht vergessen! :lol: :lol: :lol:
Bild
Benutzeravatar
netvampire
Beiträge: 9
Registriert: 13.06.2006 13:16

Beitrag von netvampire »

Jilocasin hat geschrieben:Oh jaaa... und bitte bei 4.1

Code: Alles auswählen

MakeMeARealGoodGame(filenams.s)
nicht vergessen! :lol: :lol: :lol:
Naja, oder aber ein "alcoholpowered DirectBrainInterface" :lol: :lol: :lol:
Benutzeravatar
PureLust
Beiträge: 1145
Registriert: 21.07.2005 00:02
Computerausstattung: Hab aktuell im Grunde nur noch 'nen Lenovo Yoga 2 Pro im Einsatz.
Wohnort: am schönen Niederrhein

Beitrag von PureLust »

netvampire hat geschrieben:@purelust: Hatte schonmal mid, aber wollte einfach den String immer mehr einkürzen, um ihn auszuwerten. Hat mir mehr gefallen ;)
:shock: .... das mach Mid() doch .... genauso wie Right() und Left() auch.

Nur brauchst Du bei Mid() im Gegesatz zu Right() eben nicht unbedingt die restiche Zeichenlänge zu berechnen. :?

Aber egal ... Du weisst ja nun wie Du an das gewünschte Ziel kommst. ;)
[Dynamic-Dialogs] - komplexe dynamische GUIs einfach erstellen
[DeFlicker] - Fenster flimmerfrei resizen
[WinFX] - Window Effekte (inkl. 'durchklickbares' Window)
Jilocasin
Beiträge: 665
Registriert: 13.05.2006 16:04
Kontaktdaten:

Beitrag von Jilocasin »

Man müsste die Welt umproggen können! :mrgreen:
Z.B. so..

Code: Alles auswählen

DoThis(#PB_ACTION_GIVEMONEY,99999)
:lol: :mrgreen: :wink:

Spam? Sorry! 8)
Bild
Antworten