Tag: replace

JavaScript: String in String suchen

Eine Zeichenkette (String) lässt sich in einem anderen String wie folgt suchen:

if (str.indexOf("Ja") >= 0)

…oder über den Tilde-Operator*:

if (~str.indexOf("Ja"))

Diese beiden Varianten berücksichtigen jedoch keine Groß- und Kleinschreibung!
Die Berücksichtigung von Groß- und Kleinschreibung kann man erreichen mit:

if (str.toLowerCase().indexOf("ja") >= 0)

…oder über reguläre Ausdrücke:

if (/ja/i.test(str))

* Was macht der Tilde-Operator?

Der Tilde-Operator kehrt eine Bit-Folge um, also 1 > 0 und 0 > 1. Wenn der Rückgabewert von ‘indexOf’ -1 ist, dann führt ~-1 zu 0, weil -1 komplett aus 1 Bits besteht. Jeder Wert größer oder gleich 0 wird als Rückgabe einen Nicht-Null-Wert geben.