| |
|
|
- Página 1 - |
|
Julian Schmidt | Ein umgekehrter Substr$-Befehl con el uno no, como en Substr%(), el N-ten Teilstring herausfiltert, pero el Index(N) des Teilstrings S2 des Cuerdas S1 herausfindet
Etwa así: KompilierenMarcaSeparaciónVar Suchtext$ = MkStr$("A|B|C|D|E|F",31)
print "Durchsuchter-String: " + Suchtext$
print "Gesuchter-Teilstring: B\n"
print "Ergebnis: "+STRINGIndex(Suchtext$,-1,"|","B")
waitinput
Proc StringIndex
Parameters Text$,Start%,Trenn$,Teil$
Declare A$[],Ergebnis$
A$[] = Explode(Text$,Trenn$,Start%)
Repeat
Start% = IndexOf(A$[],Teil$,Start%+1)' Nullbasierend
Case Start% = -1:Break
Ergebnis$ = Ergebnis$+If(Ergebnis$="","","|")+Str$(Start%+1)
Until Start% = -1
Return Ergebnis$
ENDPROC
KompilierenMarcaSeparación Posesiones esta Rutina en una Projekt ya algunos male benötigt. Ist vlt sinnvoll esta en XProfan einzubauen.
Apéndice: Durch Jörgs-Ayuda verbessern Ver código fuente eingefügt. |
|
|
| |
|
|
|
« Dieser Contribución wurde como Solución gekennzeichnet. » |
|
- Página 1 - |
|
Jörg Sellmeyer | así KompilierenMarcaSeparaciónWindow 1000,400
Var Suchtext$ = MkStr$("A|B|C|D|E|F|A|B|C|D|E|F|A|B|C|D|E|F",50)
print "Durchsuchter-String: " + Suchtext$
print "Gesuchter-Teilstring: 1\n"
Print "Taste drücken"
WaitKey
Var time&=&gettickcount
SubstrNr1(Suchtext$,"B","|")
print "Gebrauchte Zeit: "+Str$(&gettickcount-time&)+" ms\n"
time&=&gettickcount
StringIndex(Suchtext$,-1,"|","B")
print "Gebrauchte Zeit: "+Str$(&gettickcount-time&)+" ms"
waitinput
Proc SubstrNr1
Parameters S1$,TeilString$,Trennzeichen$
Declare Ergebnis$
Whileloop Len(S1$, Trennzeichen$)
Case (SubStr$(S1$,&loop,Trennzeichen$)=TeilString$) : Ergebnis$=Ergebnis$+If(Ergebnis$="","","|")+Str$(&loop)
EndWhile
Return Ergebnis$
EndProc
Proc StringIndex
Parameters Text$,Start%,Trenn$,Teil$
Declare A$[],Ergebnis$
'$D "",text$
A$[] = Explode(Text$,Trenn$,Start%)
Repeat
Start% = IndexOf(A$[],Teil$,Start%+1)' Nullbasierend
Case Start% = -1:Break
Ergebnis$ = Ergebnis$ + Str$(Start%) + ","
Until Start% = -1
Return Ergebnis$
ENDPROC
|
|
|
| Windows XP SP2 XProfan X4... und hier mal was ganz anderes als Profan ... | 05.08.2012 ▲ |
|
|
|
|
|
| |
|
- Página 1 - |
|
Julian Schmidt | War No bekannt el uno Len() auch así uso kann, obwohl lo nada así neu a seien scheint. Gracias! Yo habe por dich otra vez qué gelernt. |
|
|
| |
|
|
|
Jörg Sellmeyer | |
|
| Windows XP SP2 XProfan X4... und hier mal was ganz anderes als Profan ... | 03.08.2012 ▲ |
|
|
|
|
Julian Schmidt | Hättest du más que el Überschrift durchgelesen wüsstest Si es usted el dein Contribución nichts para Hilo beisteuert ^ ^ |
|
|
| |
|
|
|
Jörg Sellmeyer | Hättest du una passenderen Titel gewählt, hätte uno se no por deinen hilfetexttypischen Einleitungssatz quälen necesario, a uno ihn versteht. KompilierenMarcaSeparación |
|
|
| Windows XP SP2 XProfan X4... und hier mal was ganz anderes als Profan ... | 05.08.2012 ▲ |
|
|
|
|
Julian Schmidt | Jup, auch una Alternative, allerdings listet dieses siempre sólo una Pfund. Meistens reicht lo, allerdings manchmal braucht uno auch todos Pfunde. Man podría deinen Ver código fuente auch dahingehend modifizieren. Ist allerdings no el Mühe wert. |
|
|
| |
|
|
|
Jörg Sellmeyer | Was es porque con Usted los? Hast du 'ne Giftnatter gefrühstückt oder por qué motzt du hier así rum. Yo zeige dir, como du una Code en 2 Zeilen en lugar de 10 schreibst y du meckerst hier rum. Trotzdem es hier auch el Mehrfachsuche todavía para el Rest el Gemeinde: KompilierenMarcaSeparación |
|
|
| Windows XP SP2 XProfan X4... und hier mal was ganz anderes als Profan ... | 05.08.2012 ▲ |
|
|
|
|
Julian Schmidt | En me son 4 Zeilen siempre todavía weniger como 6. Außerdem scheint dein Code todavía algo Murx a ser. Er se ejecuta allerdings algo más rápido por KompilierenMarcaSeparaciónCLS
print "Durchsuchter-String: 1|2|3|1|2|4|5|1"
print "Gesuchter-Teilstring: 1\n"
Var time&=&gettickcount
print "Ergebnis durch Proc 1: "+SubstrNr1("1|2|3|1|2|4|5|1","1","|")
print "Gebrauchte Zeit: "+Str$(&gettickcount-time&)+" ms\n"
time&=&gettickcount
print "Ergebnis durch Proc 2: "+SubstrNr2("1|2|3|1|2|4|5|1","1","|")
print "Gebrauchte Zeit: "+Str$(&gettickcount-time&)+" ms"
waitinput
Proc SubstrNr1
Parameters S1$,TeilString$,Trennzeichen$
Declare Ergebnis$
Whileloop Len(S1$, Trennzeichen$)
Case (SubStr$(S1$,&loop,Trennzeichen$)=TeilString$) : Ergebnis$=Ergebnis$+If(Ergebnis$="","","|")+Str$(&loop)
EndWhile
Return Ergebnis$
EndProc
Proc SubstrNr2
Parameters S1$,TeilString$,Trennzeichen$
Declare A$[],Index%,Ergebnis$
A$[] = Explode(S1$,Trennzeichen$)
While Index% > -1
Index% = IndexOf(A$[],TeilString$,Index%+1)
Case Index%>-1 : Ergebnis$=Ergebnis$+If(Ergebnis$="","","|")+Str$(Index%+1)
EndWhile
Return Ergebnis$
ENDPROC
|
|
|
| |
|
|
|
Jörg Sellmeyer | Dann klär mich doch veces encima el Murx en Und teste todos veces con un String de 10000 Signo más o menos. |
|
|
| Windows XP SP2 XProfan X4... und hier mal was ganz anderes als Profan ... | 05.08.2012 ▲ |
|
|
|
|
Julian Schmidt | |
|
| |
|
|
| |
|
- Página 2 - |
|
|
Jörg Sellmeyer | así KompilierenMarcaSeparaciónWindow 1000,400
Var Suchtext$ = MkStr$("A|B|C|D|E|F|A|B|C|D|E|F|A|B|C|D|E|F",50)
print "Durchsuchter-String: " + Suchtext$
print "Gesuchter-Teilstring: 1\n"
Print "Taste drücken"
WaitKey
Var time&=&gettickcount
SubstrNr1(Suchtext$,"B","|")
print "Gebrauchte Zeit: "+Str$(&gettickcount-time&)+" ms\n"
time&=&gettickcount
StringIndex(Suchtext$,-1,"|","B")
print "Gebrauchte Zeit: "+Str$(&gettickcount-time&)+" ms"
waitinput
Proc SubstrNr1
Parameters S1$,TeilString$,Trennzeichen$
Declare Ergebnis$
Whileloop Len(S1$, Trennzeichen$)
Case (SubStr$(S1$,&loop,Trennzeichen$)=TeilString$) : Ergebnis$=Ergebnis$+If(Ergebnis$="","","|")+Str$(&loop)
EndWhile
Return Ergebnis$
EndProc
Proc StringIndex
Parameters Text$,Start%,Trenn$,Teil$
Declare A$[],Ergebnis$
'$D "",text$
A$[] = Explode(Text$,Trenn$,Start%)
Repeat
Start% = IndexOf(A$[],Teil$,Start%+1)' Nullbasierend
Case Start% = -1:Break
Ergebnis$ = Ergebnis$ + Str$(Start%) + ","
Until Start% = -1
Return Ergebnis$
ENDPROC
|
|
|
| Windows XP SP2 XProfan X4... und hier mal was ganz anderes als Profan ... | 05.08.2012 ▲ |
|
|
|
|
Julian Schmidt | Jup, ahora passt lo a 100%. Hab deine Rutina en media Ausgangsbeitrag eingefügt. |
|
|
| |
|
|
|
Jörg Sellmeyer | |
|
| Windows XP SP2 XProfan X4... und hier mal was ganz anderes als Profan ... | 05.08.2012 ▲ |
|
|
|