Hi,
Ich werde wohl den Weg mit dem mehrdimensionalen Array versuchen.
Ja, wäre auch mein Weg, ist am einfachsten zu implementieren.
(das ist natürlich meine Meinung, die nicht unbedingt jeder teilen mag ;-)
Das Unklarheiten hätte ich aber noch:
Gibt es eine einfache Möglichkeit, aus der Excel-Datei mit den Vokabeln die benötigten Arrays
myArray[0] = new Array("wort1","wort2","definition1");
myArray[1] = new Array("wort3","wort4","definition2");
myArray[2] = new Array("wort5","wort6","definition3");automatisch erstellen zu lassen? Händisch wird das ja etwas aufwändig.
Mit Sicherheit via VB, aber da bin ich kein Spezialist drin.
Wenn Du Zugriff auf Perl hast (gibt's ja schließlich auch für Windows, also bist Du nur entschuldigt, wenn Du nur maximal ein Modem hast und keine Flatrate. Aber normalerweise ist der Admin eures Uni-Netzes so nett und brennt Dir Activeperl auf CD wenn Du ihn freundlich fragst.) exportiere die Excel-Datei nach CSV (Vorsicht bei Kommas z.B. in der Definition!)
(Das ist _eine_ Zeile!)
perl -F',' -lane 'print "myArray[] = new Array(".
""$F[0]",".
""$F[1]",".
""$F[2]");"."\n"' datei.csv >> array.js
Die Nummern in myArray[] dann selber eintragen oder den Perlcode oben entspr ändern. Vielleicht hast Du ja Glück und es liest jemand hier mit, der sich in VB auskennt oder Perl so gut beherrscht, das er das Dateihandling einfach so runterschreibt (ich habe erst heute Abend wieder Zeit. Wenn Dir das reicht und sonst keiner da war, liefere ich das dann noch nach.).
- Frage:
Kannst du mir gerade noch die Funktion binSearch erklären? Ich werde nicht ganz schlau aus der. Was sollen die drei Parameter, die an die Funktion zu übergeben sind? Ist der Haystack einfach der Array myArray?
Ja. Und zwar der vollständige. "needle" ist das Wort, das Du suchst und "lang" die Position im Subarray: wenn Du z.B. das Subarray derartig hast ("englisches Wort","deutsches Wort", "Definition"), dann sucht binSearch("waffle",myArray,1) nach dem englischem Wort "waffle" und spuckt die erste gefundene Position aus. Steht da ("waffle","Waffel","Gebäck;wird gerne mit Sahne und heißen Kirschen gegessen") dann hast Du nach
found = myArray[binSearch("waffle",myArray,1)];
diese Zeile (als Array!) in der Variable found bzw -1 falls nix gefunden wurde.
Hast Du das einmal laufen, ist es kein Problem es zu erweitern.
so short
Christroph Zurnieden