Autor | Thema: SubStrRight$(S1,N,S2) | | Datum:24.02.02 13:39 
(b.kuenzel@chello.at) | |
Hallo,
da es mir nun endlich gelungen ist und wenns jemand braucht
hier eine Funktion die den Substring von rechts ausgibt
sie funktioniert gleich wie die Profan-Funtion SubStr$() nur, daß der Teilstring von rechts angegeben wird.
Def SubStrRight$(3) SubStr$($(1),If(GT(Add(Sub(Len($(1)),Len(Translate$($(1),$(3),""))),2),%(2)),\
Sub(Add(Sub(Len($(1)),Len(Translate$($(1),$(3),""))),2),%(2)),%(2)),$(3))
'Par1= Der zu bearbeitende String
'Par2= Nummer des Teilstrings von rechts
'Par3= Trennzeichen
Cls
Declare i%,T$
T$= "eins,zwei,drei,vier,fünf"
i%=1
Print T$
While Len(SubStrRight$(T$,i%,","))
Print SubStrRight$(T$,i%,",")
Inc i%
Wend
WaitInput
Gruß
Bernhard
|
| | Datum:24.02.02 16:09 
| |
Def SubStrRight$(3)
SubStr$($(1),If(GT(Len($(1))-Len(Translate$($(1),$(3),""))+2,%(2)),\ Len($(1))-Len(Translate$($(1),$(3),""))+2-%(2),%(2)),$(3))
|
| | Datum:24.02.02 17:13 
(b.kuenzel@chello.at) | |
Hallo,
es geht nicht kürzer, da sonst das Ende des SubString nicht abgefangen werden kann.
Ist die Nummer des Teilstrings größer als eingetragene Teilstrings, so wird ein Leerstring zurückgegeben, wie bei Profan
Du brauchst es nur in der Whilescheife zu testen
Gruß
Bernhard
|
| |
|