Les expressions régulières, aussi connues sous le nom de regex ou regexp, sont des séquences de caractères qui forment un modèle de recherche. Elles sont utilisées pour correspondre, localiser et gérer du texte. En JavaScript, il existe plusieurs méthodes pour travailler avec les regex.
Voici comment vous pouvez travailler avec Regex en JavaScript :
1. Créer une expression régulière:
En JavaScript, il y a deux façons de créer une regex :
- La première consiste à utiliser une expression régulière littérale, en enveloppant l’expression dans des barres obliques (/) :
```
let regex = /hello/;
```
- La seconde méthode est d’utiliser l’objet RegExp :
```
let regex = new RegExp(‘hello’);
```
1. Tester une correspondance avec `test()`
La méthode `test()` recherche un match dans une chaîne de caractères. Elle renvoie true si elle trouve un match, sinon elle renvoie false.
```
let regex = /hello/;
console.log(regex.test(“hello world”)); // logs true
```
1. Extraire une correspondance avec `exec()`
La méthode `exec()` cherche une correspondance dans une chaîne de caractères. Elle renvoie un tableau contenant le match complet et tout groupement capturant. Si aucun match n’est trouvé, elle renvoie null.
```
let regex = /hello/;
console.log(regex.exec(“hello world”)); // logs [ ‘hello’, index: 0, input: ‘hello world’, groups: undefined ]
```
1. Remplacer une correspondance avec `replace()`
La méthode `replace()` remplace du texte dans une chaîne d’après un pattern.
```
let regex = /hello/;
console.log(“hello world”.replace(regex, “hi”)); // logs “hi world“
```
1. Marqueurs spéciaux:
Il existe de nombreux marqueurs spéciaux en regex pour des besoins spécifiques, comme `i` pour rendre le match insensible à la casse, `g` pour un match global (trouver toutes les correspondances au lieu de s’arrêter après la première), etc.
```
let regexInsensitive = /hello/i;
console.log(regexInsensitive.test(“Hello world”)) // logs true
```
L’apprentissage des expressions régulières peut sembler difficile au début, mais une fois que vous comprendrez les concepts de base, elles deviendront un outil très puissant dans votre arsenal de programmation.