2017-06-17 1 views
-1

Ich habe ein Problem. Hier ist eine Zeichenkette:JavaScript enthält einen Teil der Zeichenfolge

var string = "somethingthatidontneed" 

und ich erstellt eine Reihe von Teilstrings, die ich überprüfen möchten, ob sie in string sind.

var arrString = ['some', 'that', 'dont'] 

Und die Sache ist, dass ich jeden Charakter zu bekommen, die nicht das Muster der Worte sie von arrString und zählen entspricht. Also würde ich in diesem Fall Nummer 10 erhalten (wegen der Wörter: "thingineed").

Ich würde jede Hilfe zu schätzen wissen.

+0

also, Sie wollen var string der Wörter in arrString strip? Schauen Sie sich String ersetzen Methode in einer Schleife vielleicht –

+1

Wo stehen Sie vor Schwierigkeiten? –

+0

Das wird es tun: 'arrString.forEach (str => {string = string.replace (str, '');});'. Dann einfach "string.length", um die Anzahl zu erhalten. – abhishekkannojia

Antwort

0

Anstatt zu halten, was Sie brauchen, entfernen Sie alle unerwünschten Ereignisse mit String.replace. Sie benötigen einen regulären Ausdruck mit dem Modifizierer global. Wenn eine Zeichenfolge mehrmals auftritt, werden alle Vorkommen entfernt.

Beachten Sie, dass dies die ursprüngliche Zeichenfolge ändert.

+2

oder 'string = string.replace (neue RegExp (arrString.join ('|'), 'g'), '')' - no loop: p –

Verwandte Themen