Ergebnis 1 bis 2 von 2
  1. #1
    Avatar von etnies20
    etnies20 ist offline Jungspund
    registriert
    31-12-2006
    Beiträge
    17

    Post Text untersuchen mit match()

    Hallo ...

    Ich habe folgendes Problem:

    Ich wollte mit Javascript eine Abfrage machen und die Antwort dann auf Wörter untersuchen.
    ABer es wird die FUntkion nicht einmal aufgerufen...
    (wahr. falscher COde)

    Das Array müsste doch eigentlich stimmen?

    Code:
    <html><head>
    <title>Test</title>
    
    <script type="text/javascript">
    var X = new Array("0", "1", "2", "3", "4", "5", "6", "7", "8", "9", "A", "B", "C", "D", "E", "F");
    var x1 = 0, x2 = 0;
    var i = 0;
    function setColor () {
      document.bgColor = "#" + X[x1] + X[x2] + X[x1] + X[x2] + X[x1] + X[x2];
      x2 = x2 + 1;
      if (x2 % 16 == 0) {
        x2 = 0;
        x1 = x1 + 1;
      }
      i++;
      if (i < 256)
        window.setTimeout("setColor()", 10);
    }
    </script>
    
    <script type="text/javascript"> 
            //-------Regulaeren Ausdruck anwenden: match()---------// 
           function Unterhaltung()
    	   {
    	   
    	   var discuss=new Array();
    	   discuss[1]="gut";
    	   discuss[2]="schlecht";
    	   discuss[3]="dir";
    	   discuss[4]="mir";
    	   discuss[5]="Lass mich";
    	   discuss[6]="Geh";
    	     
    		 var ergebnis=document.form.text1.value;
    		 var treffer = ergebnis.match("/."+discuss[1]+"/g"); 
    		 if (treffer != null) { 
    	     for (i = 0; i < treffer.length; i++) { 
                 document.write(treffer[i] + "<br>"); 
                } 
    			}
    		 
    		 for(var i=1;ergebnis.match("/."+discuss[i]+"/g")!=null;i++)
    		 {
    		 switch(ergebnis)
    		 {
    
                     /* WIe lautet die Abfrage
                         wenn man fragen will ob das Wort
                         vorhanden ist?????????????????  */
    
    		 case match(discuss[1]):
    		 alert("Gut");
    		 //document.form.text1.value="Gut so";
    		 break;
    
    		 case match(discuss[2]):
    		 alert("Schlecht");
    		 //document.form.text1.value="Warum geht es dir schlecht?";
    		 break;
    		 
                     // ...
    
    		 default:
    		 alert("Ok");
    		 //document.form.text1.value="Wie bitte?";
    		 break;
    		 }
    		 }
    		 
              
    		 
           }		  
          </script>	
    
    </head><body bgcolor="#000000" onLoad="setColor();">
    <div align="center"><font size="20">Hallo du!</div></font>
    
    <form name="form">
    <div id="cool">Wie geht es dir?</div><br>
    <input type="text" name="text1">
    <input type="button" onClick="Unterhaltung();">
    </form>
    
    
    </body></html>
    Geändert von etnies20 (28-01-2008 um 18:06 Uhr)
    Seas.....

  2. #2
    ele
    ele ist offline Routinier
    registriert
    27-12-2007
    Beiträge
    473

    AW: Text untersuchen mit match()

    Das problem leigt nicht am Array sonder an der RegEx.

    Die match-Funktion nimmt als Parameter keine Strings. D.h folgendes funktioniert:

    Code:
    ergebnis.match(/gut/g);
    Folgendes aber nicht:

    Code:
    ergebnis.match("/gut/g");
    Dementsprechend kann auch

    Code:
    ergebnis.match("/."+discuss[1]+"/g");
    nicht funktionieren (abgesehen, dass der Punkt darauf hinweist, dass noch ein Zeichen, vor dem was im Array angegeben ist, erwartet wird).

    Du kannst das Problem aber umgehen indem du das RegExp objekt verwendest:

    Code:
             var regexp = RegExp(discuss[1], "g");
             var treffer = regexp.exec(ergebnis);
    Die Schrägstriche ("/..../") fallen dabei weg.

Ähnliche Themen

  1. Navigation in eigener datei ablegen...
    Von midnight im Forum Allgemeines
    Antworten: 25
    Letzter Beitrag: 21-03-2009, 11:16
  2. DIV mittels JS immer an Browser-Top ausrichten ?!
    Von flashfreak im Forum JavaScript
    Antworten: 9
    Letzter Beitrag: 11-04-2007, 09:05
  3. Iframe mit anker - hauptseite lädt iframe anker
    Von Odo im Forum CSS und (X)HTML
    Antworten: 1
    Letzter Beitrag: 15-03-2007, 16:12
  4. NUR "Druckbereich" festlegen
    Von Speedy19102000 im Forum JavaScript
    Antworten: 2
    Letzter Beitrag: 29-09-2006, 15:32
  5. Objekt an "unbekannter" Position erstellen
    Von RoyalKnight im Forum JavaScript
    Antworten: 14
    Letzter Beitrag: 23-12-2005, 00:51

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •