Maison > Article > interface Web > Comment vérifier si une chaîne contient l'une des sous-chaînes d'un tableau en JavaScript ?
Recherche de sous-chaînes dans une chaîne avec des tableaux JavaScript
Pour déterminer si une chaîne contient l'une des sous-chaînes d'un tableau, JavaScript propose des approches flexibles .
Array Some Method
La méthode some parcourt un tableau, fournissant une fonction de rappel pour tester chaque élément. Pour vérifier les sous-chaînes, utilisez la méthode indexOf() pour rechercher chaque élément du tableau dans la chaîne :
<code class="js">if (substrings.some(function(v) { return str.indexOf(v) >= 0; })) { // There's at least one substring match }</code>
Expression régulière
Les expressions régulières offrent un moyen puissant pour correspondre aux modèles de texte. Pour rechercher n'importe quelle sous-chaîne dans le tableau à l'intérieur de la chaîne, créez une expression régulière avec toutes les sous-chaînes comme options alternatives et utilisez la méthode test() :
<code class="js">const regex = new RegExp(substrings.join("|")); if (regex.test(str)) { // At least one substring matches }</code>
Exemple
Considérons un tableau de sous-chaînes :
<code class="js">const substrings = ["one", "two", "three"];</code>
Chaîne avec correspondance de sous-chaîne
<code class="js">const str = "This string includes \"one\"."; // Using array some method const someMethodMatch = substrings.some(v => str.includes(v)); // Using regular expression const regexMatch = str.match(new RegExp(substrings.join("|")));</code>
Chaîne sans correspondance de sous-chaîne
<code class="js">const str = "This string doesn't have any substrings."; // Using array some method const someMethodNoMatch = substrings.some(v => str.includes(v)); // Using regular expression const regexNoMatch = str.match(new RegExp(substrings.join("|")));</code>
Résultats
Test Method | String with Match | String without Match |
---|---|---|
Array some | someMethodMatch = true | someMethodNoMatch = false |
Regular expression | regexMatch = true | regexNoMatch = null |
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!