Recherche de sous-chaînes en JavaScript
De nombreux langages de programmation fournissent une méthode simple pour vérifier si une chaîne contient une sous-chaîne particulière. Cependant, malgré les attentes, le langage JavaScript ne dispose pas de méthode String.contains() dédiée.
Trouver une solution
Pour les développeurs JavaScript, il existe plusieurs alternatives pour détection de sous-chaînes :
String.prototype.includes (ES6 ):
Introduite dans ECMAScript 6, cette méthode renvoie un booléen indiquant si la chaîne contient la sous-chaîne spécifiée.
const string = "foo"; const substring = "oo"; console.log(string.includes(substring)); // true
String.prototype.indexOf:
Cette méthode renvoie le premier index de la sous-chaîne dans la chaîne, ou -1 si elle n'est pas trouvée. Vous pouvez vérifier si l'index est supérieur ou égal à 0 pour déterminer l'existence de la sous-chaîne.
const string = "foo"; const substring = "oo"; const index = string.indexOf(substring); console.log(index !== -1); // true
String.prototype.search :
Similaire à indexOf, mais effectue une recherche d'expression régulière. Il renvoie le premier index correspondant ou -1 s'il n'est pas trouvé. Cependant, comme les sous-chaînes ne sont pas des expressions régulières par défaut, vous devrez préfixer la sous-chaîne avec .
const string = "foo"; const substring = "oo"; const index = string.search(`\${substring}`); console.log(index !== -1); // true
String.prototype.match :
Cette méthode renvoie un tableau de correspondances trouvées dans la chaîne. Si le tableau contient au moins un élément, la sous-chaîne existe.
const string = "foo"; const substring = "oo"; const matches = string.match(substring); console.log(matches.length > 0); // true
Conclusion :
Bien que JavaScript n'ait pas de méthode contain dédiée, les développeurs en ont plusieurs options viables pour vérifier les sous-chaînes, chacune avec ses propres caractéristiques de performances et son adéquation à des cas d'utilisation spécifiques.
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!