In diesem Beispiel erklären wir, wie man in einem Text Array nach einen Eintrag sucht. Am Anfang des Beispiel erstellen wir in ein Text Array mit 20 einträgen. Danach definieren wir den Suchstring. Es wird dann die Subroutine searchstring_array mit 2 Parameter aufgerufen. Der erste Parameter enthält den Suchstring und der zweite Parameter enthält das Array in dem gesucht werden soll.
In der Subroutine erstellen wir ein paar lolake Zählvariablen und ein Array names matching, damit wir das sucherergebnis speichern können.
Nachdem wir das Array erstellt haben, defieren wir unsere Suchschleife. Dazu benutzen wir die Funktion FOR. Die Zählvariabel k wird gebraucht um einmal die Schleife hochzuzählen, desweiteren nutzen wir später die Variabel um die Suchergebnisse in einem Array zu speichen. Um das Ende der Suche zu definieren benutzen Arraysize. ArraySize gibt die Größe des Arrays wider. Somit begrenzen wir die Suchdurchläufe anhand der Größe des Arrays.
In der Zeile if(glob(search_array$(k),search_string$)) then //searching in the search_array$ machen wir zwei Dinge gleichzeitig. Zum einem suchen wir mit der glob Funktion den Suchstring innerhalb search_array. Zum anderen wird ein Wahrheitswert erstellt, wenn die Bedingung erfüllt wird, d.h. wenn der Suchstring innerhalb des Sucharray gefunden wird. Es wird dann der Code innerhalb des IF Blocks ausgeführt.
Innerhalb des IF Blocks wird ein Array namens Matching defniert. Dies nimmt die gefunden Stellen auf, in dem wir k jedesmal in das Array Matching schreiben, wenn die If Bedingung erfüllt wurde.
Die Schelife wird solange ausgeführt, bis Arraysize erreicht wurde.
Am Ende geben wir mit einer For Schleife das Matching Array aus. Somit haben wir unsere Suche abgeschlossen.
This example explains how to search for an entry in a text array. The example begins by defining the text array. Next, we define the search string. Then, the subroutine `searchstring_array` is called with two parameters. The first parameter contains the search string, and the second contains the array to be searched.
dim text$(20)
text$(1)="gert"
text$(2)="google"
text$(3)="Firefox"
text$(4)="Android"
text$(5)="12345"
text$(6)="Hubert"
text$(7)="Hello"
text$(8)="Alfred"
text$(9)="Batman"
text$(10)="Robin"
text$(11)="gert"
text$(12)="google"
text$(13)="Firefox"
text$(14)="Android"
text$(15)="12345"
text$(16)="Hubert"
text$(17)="Hello Hubert"
text$(18)="Alfred"
text$(19)="Batman"
text$(20)="H"
//seachring_array(search_string$,search_array$())
search_string$="*Hubert*"
searchstring_array(search_string$,text$())
sub searchstring_array(search_string$,search_array$())
local k,u,i
u=1
dim matching(u)
for k =1 to arraysize(search_array$(),1)
if(glob(search_array$(k),search_string$)) then //searching in the search_array$
dim matching(u)
matching(u)=k // return the index number with the best case
u=u+1
endif
next k
end sub
for i=1 to arraysize(matching(),1)
print matching(i)
next i
print "************************"
//TWO DImensions
dim text2$(20,1)
text2$(1,0)="gert"
text2$(2,0)="google"
text2$(3,0)="Firefox"
text2$(4,0)="Android"
text2$(5,0)="12345"
text2$(6,0)="Hubert"
text2$(7,0)="Hello"
text2$(8,0)="Alfred"
text2$(9,0)="Batman"
text2$(10,1)="Robin"
text2$(11,1)="gert"
text2$(12,1)="google"
text2$(13,1)="Firefox"
text2$(14,1)="Android"
text2$(15,1)="12345"
text2$(16,1)="Hubert"
text2$(17,1)="Hello Hubert"
text2$(18,1)="Alfred"
text2$(19,1)="Batman"
text2$(20,1)="H"
//seachring_array(search_string$,search_array$())
search_string$="*Hubert*"
searchstring_array_2D(search_string$,text2$())
sub searchstring_array_2D(search_string$,search_array$())
local k,u,i,z
u=1
dim matching$(u)
for k =1 to arraysize(search_array$(),1)
for z =0 to arraysize(search_array$(),2)
print z
if(glob(search_array$(k,z),search_string$)) then //searching in the search_array$
dim matching$(u)
matching$(u)=str$(k)+","+str$(z) // return the index number with the best case
u=u+1
endif
next z
next k
end sub
for i=1 to arraysize(matching$(),1)
print matching$(i)
next i