Détection de sous-chaînes dans une chaîne à l'aide de JavaScript
Lorsque vous travaillez avec des chaînes en JavaScript, une tâche courante consiste à vérifier si elles contiennent du texte provenant d'un ensemble prédéfini de sous-chaînes. Bien que JavaScript n'offre pas de solution intégrée, voici deux approches pour relever ce défi.
Array some Method
Exploiter la méthode Array some() ( ES5), vous pouvez parcourir le tableau de sous-chaînes et vérifier si l'une d'entre elles existe dans la chaîne cible.
<code class="javascript">if (substrings.some(function(v) { return str.indexOf(v) >= 0; })) { // There's at least one }</code>
Pour un code plus propre, pensez à utiliser les fonctions fléchées et la méthode include() (ES2015) :
<code class="javascript">if (substrings.some(v => str.includes(v))) { // There's at least one }</code>
Expression régulière
Une autre option consiste à utiliser une expression régulière. Bien que plus complexe, cette approche vous permet de rechercher plusieurs modèles simultanément.
<code class="javascript">const re = new RegExp(substrings.join('|')); if (re.test(str)) { // There's at least one match }</code>
En joignant les sous-chaînes dans une chaîne d'expression régulière, vous pouvez tester leur présence dans la chaîne cible.
Exemple
<code class="javascript">const substrings = ["one", "two", "three"]; const str = "this has one"; // Expected match if (substrings.some(v => str.includes(v))) { console.log("Match found."); } else { console.log("No match found."); }</code>
Sortie :
Match trouvé.
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!