Wortabgleich-Funktion ->match

jaycon

Grünschnabel
Hallo,
möchte bei Vokabelabfrage die richtigkeit überprüfen.
Dabei verstehe ich die Zeile für die Variabel "ra" nicht.
Kann mir jmd. sagen was das bedeutet (die Hyroglyphen) und evetnl. Lösung schicken fdafür, dass nicht mehrere Wärter erkannt werden....
Hier der Code:
Code:
** Diese Funktion stellt die eigentliche ueberpruefung der Eingabe dar. Die Besonderheit dieser
** Pruefung liegt darin, dass, falls mehrere Moeglichkeiten richtig sind, nur eine Moeglichkeit
** eingegeben werden muss */
function pruefung(input,gesuchteWoerter){
        var ra =/\w+\s?\w*\s?\w*\s?\w*/g;
        var gesuchte = gesuchteWoerter.match(ra);

        var treffer = false;
        /* ueberpruefung: entspricht der eingegebene Wert einem Wert aus dem erstellten Array, so wird die
        ** Variable "treffer" auf true gesetzt */
        if (input == gesuchte){ var treffer = true}
        for(i=0;i<(gesuchte.length);i++){
                if (input == gesuchte[i]){
                        var treffer = true;}
}
/* die Variable treffer wird zur weiteren Verarbeitung ausgegeben */
return treffer;
}


DANKE
 
Diese Zeile (man nennt das "regulären Ausdruck" )bedeutet:

Suche:
\w+ ---> Ein oder mehr Wortzeichen(Buchstaben und _ )
\s? ---> gefolgt von einem oder keinen Leerzeichen
\w* ---> gefolgt von beliebig vielen Wortzeichen
\s? ---> gefolgt von einem oder keinen Leerzeichen
\w* ---> gefolgt von beliebig vielen Wortzeichen
\s? ---> gefolgt von einem oder keinen Leerzeichen
\w* ---> gefolgt von beliebig vielen Wortzeichen
...und dass bitte gierig(finde also die grösste findbare Übereinstimmung)

Im Endeffekt trifft dieser Ausdruck bereits auf einen einzelnen Buchstaben zu.

http://de.selfhtml.org/javascript/objekte/regexp.htm
 
Hallo,

erstmal vielen Dank.
Möchte, dass man sowohl grosse wie auch kleine Buchstaben am Wortanfang eingeben kann und das Wort erkannt wird. Die Vokabeln aber werden nur auf eine Art im Array abgespeichert!
Habe bei mir (nach gucken auf Self.html -> Danke) das "g" durch ein "i" ersetzt...läuft leider nicht....haste ne Idee wie ich das umsetze?
Danke!
 
Wenn es nur Buchstaben enthalten darf, und am Anfang auch ein Grossbuchstabe erlaubt ist, sähe das so aus:
Code:
\b[a-zA-zaöüÄÖÜß][a-zäöüß]+\b
 
Danke wiederum für die schnelle Antwort.
Deine Idee funktioniert so leider nicht, aber wenn das dann nciht funktioniert ist dann halt uch nicht so wild. Habe schon das super schlechte Gewissen dich die ganze Zeit wegen (wahrscheinlich so trivialer) Dinge zu nerven. Daher danke nochmals für die GROßE Hilfe!
 

Neue Beiträge

Zurück