Sie wollen wahrscheinlich einen regulären Ausdruck verwenden. Hier sind die Dinge, die Sie
Text
(mit Leerzeichen umgebenden)
... Text
(mit Platz auf der einen Seite, und am Ende des Textes auf der anderen Seite)
Text ...
(mit Platz auf einer Seite passen wollen und auf der anderen Seite beginnen)
Text
(nur die Zeichenfolge, auf seiner eigenen)
eine Möglichkeit, dies zu tun, ohne einen regulären Ausdruck, jus ist t, um 4 Bedingungen (eine für jeden Aufzählungspunkt oben) zu setzen und sie mit einer &&
zusammenzufügen, aber das würde zu unordentlichem Code führen.
Eine weitere Option besteht darin, beide Strings durch Leerzeichen zu trennen und zu prüfen, ob ein Array ein Subarray eines anderen ist.
Allerdings verwendet meine Lösung einen regulären Ausdruck - das ist ein Muster, das Sie auf einer Zeichenfolge testen können.
Unser Muster sollte
- Suchen Sie nach einem Raum/Anfang Zeichenfolge
- prüfen für die Zeichenfolge
- Suchen Sie nach einem Raum/Ende der Zeichenkette
\b
, nach this , werden Leerzeichen, Worttrennzeichen und Zeichenfolgen abgeglichen. Diese Dinge nennt man Wortgrenzen. Hier
ist der Code:
function doesContain(str, query){ // is query in str
return new RegExp("\b" + query + "\b", "i").test(str)
}
Die i
macht das Spiel Groß- und Kleinschreibung.
'/ \ bhello \ sworld \ b/gi' – adeneo