Jak sprawdzić, czy ciąg zawiera podciąg w JavaScript?
Podciąg to część ciągu. Reprezentuje sekwencję znaków wyodrębnionych z większego ciągu. Podciąg może być tak krótki, jak pojedynczy znak lub rozciągać się na wiele znaków.
Istnieje kilka podejść do sprawdzania, czy ciąg zawiera podciąg, czy nie:
Spis treści
- Sprawdzanie podciągu za pomocą metody include().
- Sprawdzanie podciągu za pomocą metody test().
- Sprawdzanie podciągu za pomocą metody match().
- Sprawdzanie podciągu za pomocą metody IndexOf().
- Sprawdzanie podciągu za pomocą metody search().
Sprawdzanie podciągu za pomocą metody include().
JavaScript string.includes() Metodę można zastosować do sprawdzenia, czy ciąg zawiera określony podciąg. To powraca PRAWDA jeśli podciąg jest obecny. W tej metodzie rozróżniana jest wielkość liter.
Składnia:
string.includes(searchvalue, start)
Przykład: W tym przykładzie zastosowano metodę include() języka JavaScript w celu sprawdzenia obecności podciągu w ciągu.
JavaScript let str = 'Hello there! Welcome to techcodeview.com'; let flag = str.includes('Geeks'); console.log(flag); Wyjście
true
Wyjaśnienie:
Kod sprawdza, czy ciąg Witam! Witamy w techcodeview.com zawiera podciąg Geeks. Przypisuje wynik tego sprawdzenia do zmiennej „flaga” i loguje go do konsoli.
Sprawdzanie podciągu za pomocą metody test().
W tej metodzie użyjemy test() metoda testowania podciągu w ciągu. Ta metoda zwraca wartość true, jeśli znaleziony podciąg zwraca wartość false.
Składnia:
/sub-string/.test( String );
Przykład: W tym przykładzie zastosowano metodę test() języka JavaScript w celu sprawdzenia podciągu w ciągu.
JavaScript let str = 'Hello there! Welcome to geeksforgeeks'; let flag = /geeks/.test(str); console.log(flag);
Wyjście
true
Wyjaśnienie:
Kod sprawdza, czy ciąg Witam! Witamy w geeksforgeeks zawiera maniaków podciągów używających wyrażeń regularnych. Przypisuje wynik do flag> i loguje go do konsoli.
C hecking dla Substringu za pomocą metody match().
W tym podejściu JavaScript metoda string.match(). za pomocą wyrażenia regularnego sprawdza, czy w ciągu istnieje podciąg, zwracając wartość null, jeśli nie zostanie znaleziony, lub tablicę dopasowań, jeśli zostanie znaleziony.
Składnia:
string.match(regExp)
Przykład: W tym przykładzie stosujemy podejście wyjaśnione powyżej.
JavaScript let str = 'Hello there! Welcome to geeksforgeeks'; let substring = 'there'; let containsSubstring = str.match(new RegExp(substring)) !== null; console.log(containsSubstring);
Wyjście
true
Wyjaśnienie:
Kod wyszukuje podciąg w obrębie ciągu Witam! Witamy w geeksforgeeks używającym wyrażeń regularnych. Przypisuje wynik do `containsSubstring` i rejestruje go.
Sprawdzanie podciągu za pomocą Metoda indeksOf().
JavaScript indeks() metoda zwraca pozycję podciągu w ciągu lub -1, jeśli nie zostanie znaleziony, co pozwala nam sprawdzić istnienie podciągu.
Składnia:
str.indexOf(searchValue , index);
Przykład: Tutaj stosujemy podejście wyjaśnione powyżej.
JavaScript let str = 'Hello there! Welcome to geeksforgeeks'; let substring = 'geeks'; let result = str.includes(substring); console.log(result);
Wyjście
true
Wyjaśnienie:
Kod sprawdza, czy ciąg Witam! Witamy w geeksforgeeks zawiera maniaków podciągów. Przypisuje wynik do „result” i rejestruje go.
Sprawdzanie podciągu z metodą search().
W tym podejściu szukaj() metoda jest wywoływana na ciągu znaków z obiektem wyrażenia regularnego utworzonym z wartości podciągu przy użyciu nowego RegExp(podciąg). Wyszukuje pierwsze wystąpienie podciągu w ciągu. Sprawdzając, czy wynik nie jest równy -1, ustalamy, czy podciąg istnieje w ciągu. Wynik logiczny jest przechowywany w zmiennej zawieraSubstring i drukowany na konsoli.
Składnia:
string.search(new RegExp)
Przykład: Tutaj stosujemy podejście wyjaśnione powyżej.
JavaScript let str = 'Hello there! Welcome to geeksforgeeks' let substring = 'geeks'; let result = str.search(new RegExp(substring)) !== -1; console.log(result);
Wyjście
true
Wyjaśnienie:
Wyrażenie regularne tworzy się za pomocą new RegExp(substring)> aby dopasować maniaków podciągów. The search()> metoda służy do znalezienia indeksu substring> w str> . Wynik logiczny (czy substring> znajduje się w str> ) jest przypisany result> .
Możemy sprawdzić, czy ciąg zawiera podciąg, używając Loadsh
Możesz sprawdzić podciąg za pomocą metody Lodash _.strContains(). W tym podejściu możemy użyć metody Metoda lodash _.strContains(). , Sprawdzi obecność podanego podciągu w podanym ciągu i zwróci wartość logiczną.
// Defining lodash contrib variable let _ = require('lodash-contrib'); let bool = _.strContains('techcodeview.com', 'Geeks'); console.log('The String contains the ' + 'searched String : ', bool); Sprawdzanie podciągu za pomocą metody plasterek().
W tej metodzie użyjemy metody plasterek() do wyodrębnienia podciągów z ciągu głównego i porównania ich z wyszukiwaną wartością. Ta metoda iteruje po głównym ciągu, wyodrębnia podciąg o tej samej długości co wyszukiwana wartość w każdej pozycji i sprawdza równość. Jeśli zostanie znalezione dopasowanie, zwraca wartość true.
Notatka: Aby uruchomić ten kod, musisz zainstalować pakiet lodash-contrib.
Przykład : Ten przykład ilustruje użycie metody plasterek() do sprawdzenia, czy w ciągu znaków znajduje się podciąg.
JavaScript function containsSubstring(mainString, searchValue) { let searchLength = searchValue.length; let mainLength = mainString.length; for (let i = 0; i <= mainLength - searchLength; i++) { if (mainString.slice(i, i + searchLength) === searchValue) { return true; } } return false; } let str = 'Hello there! Welcome to geeksforgeeks'; let substring = 'geeks'; let result = containsSubstring(str, substring); console.log(result); Wyjście
true