Hvordan kontrollerer man, om en streng indeholder en understreng i JavaScript?
En understreng er en del af en streng. Det repræsenterer en sekvens af tegn udtrukket fra en større streng. En understreng kan være så kort som et enkelt tegn eller udvide til flere tegn.
Der er flere metoder til at kontrollere, om en streng indeholder en understreng eller ej:
Indholdsfortegnelse
- Kontrollerer for understreng med include()-metoden
- Kontrollerer for understreng med test()-metoden
- Kontrollerer for understreng med match()-metoden
- Søger efter understreng med metoden indexOf().
- Søger efter understreng med search()-metoden
Kontrollerer for understreng med include()-metoden
JavaScript string.includes() metode kan bruges til at kontrollere, om en streng indeholder en specificeret understreng. Det vender tilbage rigtigt hvis understrengen er til stede. Denne metode skelner mellem store og små bogstaver.
Syntaks:
string.includes(searchvalue, start)
Eksempel: Dette eksempel bruger JavaScript-metoden include() til at tjekke for understrengen i en streng.
Javascript let str = 'Hello there! Welcome to techcodeview.com'; let flag = str.includes('Geeks'); console.log(flag); Produktion
true
Forklaring:
Koden tjekker, om strengen Hej der! Velkommen til techcodeview.com indeholder understrengen Geeks. Den tildeler resultatet af denne kontrol til variablen 'flag' og logger den til konsollen.
Kontrollerer for understreng med test()-metoden
I denne metode vil vi bruge prøve() metode til at teste understrengen i strengen. Denne metode returnerer sand, hvis understrengen fundet andet returnerer falsk.
Syntaks:
/sub-string/.test( String );
Eksempel: Dette eksempel bruger JavaScript-metoden test() til at tjekke for understrengen i en streng.
Javascript let str = 'Hello there! Welcome to geeksforgeeks'; let flag = /geeks/.test(str); console.log(flag);
Produktion
true
Forklaring:
Koden tester, om strengen Hello there! Welcome to geeksforgeeks indeholder understrengen geeks ved hjælp af et regulært udtryk. Det tildeler resultatet til flag> og logger det på konsollen.
C hecking for Substring med match() Method
I denne tilgang, JavaScript string.match() metode kontrollerer med et regulært udtryk, om der findes en understreng i strengen, og returnerer null, hvis den ikke findes, eller en matrix af matches, hvis den findes.
Syntaks:
string.match(regExp)
Eksempel: I dette eksempel bruger vi den ovenfor forklarede tilgang.
Javascript let str = 'Hello there! Welcome to geeksforgeeks'; let substring = 'there'; let containsSubstring = str.match(new RegExp(substring)) !== null; console.log(containsSubstring);
Produktion
true
Forklaring:
Koden søger efter understrengen der i strengen Hej! Velkommen til geeksforgeeks ved hjælp af et regulært udtryk. Det tildeler resultatet til `containsSubstring` og logger det.
Kontrollerer for understreng med indexOf() metode
JavaScript indeks af() metode returnerer positionen af en understreng i en streng eller -1, hvis den ikke findes, hvilket giver os mulighed for at kontrollere understrengens eksistens.
Syntaks:
str.indexOf(searchValue , index);
Eksempel: Her bruger vi den ovenfor forklarede tilgang.
Javascript let str = 'Hello there! Welcome to geeksforgeeks'; let substring = 'geeks'; let result = str.includes(substring); console.log(result);
Produktion
true
Forklaring:
Koden tjekker, om strengen Hej der! Velkommen til geeksforgeeks indeholder understrengen geeks. Den tildeler resultatet til 'resultat' og logger det.
Kontrollerer for understreng med search() metode
I denne tilgang er Søg() metode kaldes på str-strengen med et regulært udtryksobjekt, der er oprettet ud fra understrengværdien ved hjælp af den nye RegExp(understreng). Den søger efter den første forekomst af understrengen i strengen. Ved at kontrollere, om resultatet ikke er lig med -1, afgør vi, om understrengen findes i strengen. Det booleske resultat gemmes i variablen containsSubstring og udskrives til konsollen.
Syntaks:
string.search(new RegExp)
Eksempel: Her bruger vi den ovenfor forklarede tilgang.
Javascript let str = 'Hello there! Welcome to geeksforgeeks' let substring = 'geeks'; let result = str.search(new RegExp(substring)) !== -1; console.log(result);
Produktion
true
Forklaring:
Et regulært udtryk oprettes vha new RegExp(substring)> at matche understrengsnørderne. Det search()> metode bruges til at finde indekset for substring> inden for str> . Det boolske resultat (hvis substring> findes i str> ) er tildelt result> .
Vi kan kontrollere, om en streng indeholder en understreng ved hjælp af Loadsh
Du kan tjekke for understreng ved hjælp af Lodash _.strContains() methd. I denne tilgang kan vi bruge lodash _.strContains() metode , Det vil kontrollere tilstedeværelsen af den givne understreng i den givne streng og returnere den boolske værdi.
// Defining lodash contrib variable let _ = require('lodash-contrib'); let bool = _.strContains('techcodeview.com', 'Geeks'); console.log('The String contains the ' + 'searched String : ', bool); Søger efter understreng med slice()-metoden
I denne metode bruger vi slice()-metoden til at udtrække understrenge fra hovedstrengen og sammenligne dem med søgeværdien. Denne metode itererer gennem hovedstrengen, udtrækker en understreng af samme længde som søgeværdien ved hver position og tjekker for lighed. Hvis der findes et match, returnerer det sandt.
Bemærk: Du skal installere lodash-contrib-pakken for at køre denne kode.
Eksempel : Dette eksempel demonstrerer brugen af slice()-metoden til at søge efter en understreng i en streng.
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); Produktion
true