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().

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