Avatar billede pegasus72 Nybegynder
29. juli 2005 - 11:20 Der er 13 kommentarer og
1 løsning

Søge i Array uden at være strict søgning?

Er det muligt at søge i et Array uden at din søgeværdi skal være == men kan fange "ord i ordet"?

eks: Jeg skriver i textField: "midten" der fanger: ["i midten af"]..

Håber i kan hjælpe mig videre..
Avatar billede thulstrup Nybegynder
29. juli 2005 - 11:28 #1
Prøv med det her:

var liste:Array = new Array("i midten af", "bla");
function searchArray(haystack:Array, needle:String) {
    for (i in haystack) {
        if (haystack[i].indexOf(needle) != -1) {
            return true;
        }
    }
    return false;
}
trace(searchArray(liste, "midten"));
Avatar billede pegasus72 Nybegynder
29. juli 2005 - 11:48 #2
Det var sgu smart! Det bragte mig meget videre...
Kan det laves så det ikke er case sensetive? toLowerCase() et eller andet ikke?
Avatar billede thulstrup Nybegynder
29. juli 2005 - 11:52 #3
Yes, så er det bare sådan her:

var liste:Array = new Array("i midten af", "bla");
function searchArray(haystack:Array, needle:String) {
    needle = needle.toLowerCase();
    for (i in haystack) {
        if (haystack[i].toLowerCase().indexOf(needle) != -1) {
            return true;
        }
    }
    return false;
}
trace(searchArray(liste, "MiDtEn"));
Avatar billede pegasus72 Nybegynder
29. juli 2005 - 11:57 #4
Tusind tak, du har virkelig reddet min dag..

Det skal bruges så jeg i et tekstfelt ved hver indtastning .change kører funktionen og filtrerer ikke relevante rækker fra...

Svar tak!

PS. Er du proffesionel programmør?
Avatar billede thulstrup Nybegynder
29. juli 2005 - 12:03 #5
Jeg arbejder som Flash designer/udvikler til dagligt, men jeg vil nok ikke gå så langt som at kalde mig proffesionel programmør :o)
Avatar billede barklund Nybegynder
29. juli 2005 - 12:03 #6
Husk at fasttype funktionens returtype - og 'i' skal også lige var'es og fasttypes :)

var liste:Array = new Array("i midten af", "bla");
function searchArray(haystack:Array, needle:String):Boolean {
    needle = needle.toLowerCase();
    for (var i:String in haystack) {
        if (haystack[i].toLowerCase().indexOf(needle) != -1) {
            return true;
        }
    }
    return false;
}
trace(searchArray(liste, "MiDtEn"));

Det er lidt pænere og lidt rigtigere ;)

--
Morten Barklund
Avatar billede pegasus72 Nybegynder
29. juli 2005 - 12:07 #7
Tak begge to! God Week End!
Avatar billede thulstrup Nybegynder
29. juli 2005 - 12:12 #8
Tak for point

barklund >> Jep, det bør også være med. Jeg har fået en dårlig vane med at undlade at fasttype returtyper når jeg koder i IDE'et.
Avatar billede barklund Nybegynder
29. juli 2005 - 12:28 #9
Puhadada - men jeg har faktisk lavet mig et lille jsfl-script, der kører alle klasser i gennem og redigerer asdoc syntax - og laver noter om manglende fasttypning af argumenter og returtyper :)

Skal nok få det organiseret lidt og skrevet en lille artikel om det - det er meget sjovt at lege med :)
Avatar billede thulstrup Nybegynder
29. juli 2005 - 12:51 #10
Lyder smart! Det vil jeg da gerne hører mere om :o)
Hvad bruger du egentlig til at genererer asdoc med?
Avatar billede barklund Nybegynder
29. juli 2005 - 13:55 #11
Du mener asdoc i klasser til faktisk dokumentation? der er en del derude - kig på osflash.org for at finde fornuftige open-source dimser :)
Avatar billede pegasus72 Nybegynder
29. juli 2005 - 13:57 #12
Har i set mit EKSTRA spørgsmål?
Avatar billede thulstrup Nybegynder
29. juli 2005 - 15:43 #13
Ja, jeg mente til at lave asdoc i klasserne om til html-dokumentation.
Det kunne jo være at du havde et dokumentations system du ville anbefale :)
Avatar billede barklund Nybegynder
29. juli 2005 - 16:30 #14
Well, osflash lister de eksisterende - og så er det jo med at prøve sig frem til, hvad man kan lide :)
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
IT-kurser om Microsoft 365, sikkerhed, personlig vækst, udvikling, digital markedsføring, grafisk design, SAP og forretningsanalyse.

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester