Maison  >  Article  >  interface Web  >  Comment JavaScript utilise les expressions régulières

Comment JavaScript utilise les expressions régulières

PHPz
PHPzoriginal
2023-04-25 17:31:11998parcourir

L'expression régulière est un modèle utilisé pour faire correspondre des chaînes et peut être utilisé pour vérifier, rechercher, remplacer des chaînes, etc. JavaScript prend en charge les expressions régulières. Cet article explique comment utiliser les expressions régulières en JavaScript.

Les expressions régulières sont complexes et peuvent prêter à confusion si vous débutez avec elles. Mais tant que vous comprenez la syntaxe de base et les fonctions communes, vous pouvez l'utiliser pour résoudre des problèmes complexes de correspondance et de remplacement de chaînes.

1. Syntaxe de base des expressions régulières

Les expressions régulières se composent d'une série de caractères et de métacaractères, et les métacaractères sont utilisés pour spécifier des règles de correspondance. Voici quelques-uns des métacaractères les plus basiques :

  1. Lettres et chiffres : vous pouvez saisir toutes les lettres et tous les chiffres directement dans l'expression régulière pour faire correspondre les caractères correspondants. Par exemple, l'expression régulière /test/ peut correspondre exactement à la chaîne « test ».
  2. Métacaractères : les métacaractères sont des caractères spéciaux avec des significations particulières. Par exemple, "." dans l'expression régulière représente n'importe quel caractère, "^" représente le début de la chaîne et "$" représente la fin de la chaîne.
  3. Jeu de caractères : utilisé pour faire correspondre n'importe quel caractère dans un ensemble de caractères. Par exemple, l'expression régulière /[ab]/ correspond à « a » ou « b ».
  4. Quantificateur : utilisé pour spécifier le nombre ou la plage de répétitions correspondantes. Par exemple, l'expression régulière /a+/ peut correspondre à n'importe quel nombre de caractères « a » (au moins un), et « a{3} » signifie correspondre à trois caractères « a » consécutifs.

Voici quelques exemples simples d'expressions régulières :

expression Match content
/test/ test
/.at/ cat, hat, sat
/[bc]at/ bat, cat
/[0-9 ]*/ 1234567890

2. Expressions régulières en JavaScript

JavaScript prend en charge les expressions régulières. Vous pouvez utiliser l'objet RegExp pour créer un objet d'expression régulière, ou vous pouvez utiliser la méthode régulière de l'objet String pour effectuer une correspondance de chaîne.

  1. Créer un objet d'expression régulière

Vous pouvez utiliser le constructeur de l'objet RegExp pour créer un objet d'expression régulière. Le constructeur accepte deux paramètres : l'un est le modèle de chaîne utilisé pour la correspondance et l'autre est le caractère indicateur facultatif. chaîne.

Par exemple :

var pattern = /d+/g; //Utilisez un modèle littéral pour créer un objet d'expression régulière
var pattern2 = new RegExp("d+", "g"); //Utilisez le constructeur pour créer un Objet d'expression régulière

Dans l'exemple ci-dessus, l'expression régulière "/d+/g" et la chaîne "d+" sont identiques, indiquant toutes deux la correspondance d'un ou plusieurs nombres.

  1. Correspondance de chaînes

En JavaScript, vous pouvez utiliser les méthodes match(), search(), replace() et split() de l'objet String pour implémenter la correspondance de chaînes.

Méthode match() : La méthode match() renvoie un tableau qui contient le contenu de la chaîne qui correspond à l'expression régulière. Si rien ne correspond, null est renvoyé. Par exemple :

var str = "hello world , hello JavaScript". ;
var pattern = /hello/;
var result = str.match(pattern);
console.log(result); // Output ["hello"]

search() méthode : search() La méthode renvoie le position de départ de la chaîne correspondante, ou -1 si rien ne correspond. Par exemple :

var str = "hello world, hello JavaScript";
var pattern = /world/;
console.log(result); // Sortie 6

Méthode replace() : La méthode replace() est utilisée pour remplacer le contenu du texte correspondant et renvoyer la nouvelle chaîne remplacée. Par exemple :

var str = "bonjour tout le monde, bonjour JavaScript" ;

var pattern = /hello/;
var result = str.replace(pattern, "hi"); " Salut tout le monde, salut JavaScript "

Méthode split() : La méthode split() divise une chaîne en un tableau de chaînes, en utilisant une chaîne de délimiteur spécifiée ou une expression régulière pour déterminer la position de division. Par exemple :

var str = "apple,banana,orange";

var pattern = /[,]/;

var result = str.split(pattern);
console.log(result); apple ", "banana", "orange"]

Verify string
  1. En JavaScript, vous pouvez utiliser la méthode test() de l'objet RegExp pour vérifier si la chaîne est conforme à l'expression régulière. test() renvoie vrai ou faux, indiquant si la chaîne répond aux exigences de l'expression régulière. Par exemple :

var pattern = /d+/;

console.log(pattern.test("123")); // Sortie true

console.log(pattern.test("1a23"));

3. Applications avancées des expressions régulières

Il existe de nombreuses utilisations avancées des expressions régulières, qui peuvent réaliser des fonctions de correspondance et de remplacement de chaînes plus complexes. Voici quelques applications avancées courantes :

Correspondance de groupes
  1. Utilisez des parenthèses pour représenter des groupes, par exemple, l'expression régulière /(d{3})-(d{3})-(d{4})/ Can correspondre à des formats de numéro de téléphone similaires à "123-456-7890", où les trois groupes (d{3}), (d{3}) et (d{4}) correspondent à l'indicatif régional, au centre, au numéro et au suffixe.
  1. Assertion de largeur nulle

L'assertion de largeur nulle fait référence à la correspondance de la position de la chaîne plutôt que des caractères. Par exemple, l'expression régulière /cat(?=dog)/ correspond à "cat" suivi de "dog" mais ne correspond pas à "cat" non suivi de "dog".

  1. Remplacer les résultats correspondants

Nous pouvons utiliser des espaces réservés tels que 1 $, 2 $, etc. lors du remplacement du texte pour représenter le premier et le deuxième groupe dans les résultats correspondants, et ainsi de suite. Par exemple, les expressions régulières /(d{3})-(d{3})-(d{4})/ et "123-456-7890" peuvent être remplacées par "($1) $2-$3" pour obtenir Le résultat est « (123) 456-7890 ».

4. Conclusion

L'expression régulière est un puissant outil de correspondance de modèles. Apprenez à l'utiliser pour gérer divers problèmes de correspondance et de remplacement de chaînes. En JavaScript, vous pouvez utiliser les méthodes régulières de l'objet RegExp et de l'objet String pour effectuer des opérations sur les expressions régulières. Cet article présente la syntaxe de base et les applications courantes des expressions régulières, et fournit quelques exemples d'applications avancées. J'espère que les lecteurs pourront comprendre l'utilisation des expressions régulières en JavaScript grâce à cet article.

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!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn