2010-11-22 21 views
12

Wenn ein Satz enthält "Hallo Welt" (keine Anführungszeichen), dann muss ich True zurückgeben und etwas tun. Mögliche Sätze könnten wie folgt sein:Wenn Satz enthält Zeichenfolge

Ich weiß, dass die .contains nicht funktioniert, also suche ich etwas funktioniert. Regex ist hier der Feind.

Antwort

19

Die Methode, die Sie suchen, ist indexOf (Documentation). Versuchen Sie, die folgenden

if (sentence.indexOf('Hello World') >= 0) { 
    alert('Yes'); 
} else { 
    alert('No'); 
} 
+1

Sie es nicht nur versuchen. TU es. ;) – Stephen

+0

@Stephen, gibt es eine zusätzliche Semantik, die '! == false' hier hinzufügt oder nur zur besseren Lesbarkeit? – JaredPar

+0

Eh, tut mir leid. Ich habe gerade diesen Teil des Kommentars gelöscht, Jared. Wenn der String nicht existiert, gibt 'indexOf' '-1' und nicht 'false' zurück. – Stephen

3

dies stattdessen versuchen:

if (sentence.indexOf("Hello World") != -1) 
{ 
    alert("Yes"); 
} 
else 
{ 
    alert("No"); 
} 
Verwandte Themen