Expressions régulières et objet RegExp

Une expression régulière est un objet qui décrit un modèle de caractères.

Le JavaScript RegExp class représente des expressions régulières, et à la fois String et RegExp définissez des méthodes qui utilisent des expressions régulières pour exécuter de puissantes fonctions de correspondance de modèles et de recherche et remplacement sur du texte.

Syntaxe

Une expression régulière peut être définie avec RegExp () constructeur, comme suit -

var pattern = new RegExp(pattern, attributes);
or simply
var pattern = /pattern/attributes;

Voici la description des paramètres -

  • pattern - Une chaîne qui spécifie le modèle de l'expression régulière ou d'une autre expression régulière.

  • attributes - Une chaîne facultative contenant l'un des attributs "g", "i" et "m" qui spécifient respectivement des correspondances globales, non sensibles à la casse et multilignes.

Supports

Les crochets ([]) ont une signification particulière lorsqu'ils sont utilisés dans le contexte d'expressions régulières. Ils sont utilisés pour trouver une gamme de caractères.

N ° Sr. Expression et description
1

[...]

N'importe quel caractère entre les crochets.

2

[^...]

Tout caractère non compris entre les crochets.

3

[0-9]

Il correspond à n'importe quel chiffre décimal de 0 à 9.

4

[a-z]

Il correspond à n'importe quel caractère en minuscules a en minuscules z.

5

[A-Z]

Il correspond à n'importe quel caractère en majuscule A en majuscules Z.

6

[a-Z]

Il correspond à n'importe quel caractère en minuscules a en majuscules Z.

Les plages indiquées ci-dessus sont générales; vous pouvez également utiliser la plage [0-3] pour faire correspondre tout chiffre décimal compris entre 0 et 3, ou la plage [bv] pour correspondre à tout caractère minuscule allant deb à travers v.

Quantificateurs

La fréquence ou la position des séquences de caractères entre crochets et des caractères uniques peut être indiquée par un caractère spécial. Chaque caractère spécial a une connotation spécifique. Les indicateurs +, *,? Et $ suivent tous une séquence de caractères.

N ° Sr. Expression et description
1

p+

Il correspond à toute chaîne contenant un ou plusieurs p.

2

p*

Il correspond à toute chaîne contenant zéro ou plus de p.

3

p?

Il correspond à toute chaîne contenant au plus un p.

4

p{N}

Il correspond à toute chaîne contenant une séquence de N p

5

p{2,3}

Il correspond à toute chaîne contenant une séquence de deux ou trois p.

6

p{2, }

Il correspond à toute chaîne contenant une séquence d'au moins deux p.

sept

p$

Il correspond à n'importe quelle chaîne avec p à la fin.

8

^p

Il correspond à n'importe quelle chaîne avec p au début.

Exemples

Les exemples suivants expliquent plus en détail les caractères correspondants.

N ° Sr. Expression et description
1

[^a-zA-Z]

Il correspond à toute chaîne ne contenant aucun des caractères compris entre a à travers z et A par Z.

2

p.p

Il correspond à toute chaîne contenant p, suivi de n'importe quel caractère, à son tour suivi d'un autre p.

3

^.{2}$

Il correspond à toute chaîne contenant exactement deux caractères.

4

<b>(.*)</b>

Il correspond à toute chaîne comprise entre <b> et </b>.

5

p(hp)*

Il correspond à toute chaîne contenant un p suivi de zéro ou plusieurs instances de la séquence hp.

Caractères littéraux

N ° Sr. Caractère et description
1

Alphanumeric

Lui-même

2

\0

Le caractère NUL (\ u0000)

3

\t

Onglet (\ u0009

4

\n

Nouvelle ligne (\ u000A)

5

\v

Onglet Vertical (\ u000B)

6

\f

Saut de formulaire (\ u000C)

sept

\r

Retour chariot (\ u000D)

8

\xnn

Le caractère latin spécifié par le nombre hexadécimal nn; par exemple, \ x0A est identique à \ n

9

\uxxxx

Le caractère Unicode spécifié par le nombre hexadécimal xxxx; par exemple, \ u0009 est identique à \ t

dix

\cX

Le caractère de contrôle ^ X; par exemple, \ cJ équivaut au caractère de nouvelle ligne \ n

Métacaractères

Un métacaractère est simplement un caractère alphabétique précédé d'une barre oblique inverse qui agit pour donner à la combinaison une signification particulière.

Par exemple, vous pouvez rechercher une grosse somme d'argent en utilisant le métacaractère '\ d': /([\d]+)000/, Ici \d recherchera n'importe quelle chaîne de caractères numériques.

Le tableau suivant répertorie un ensemble de métacaractères qui peuvent être utilisés dans les expressions régulières de style PERL.

N ° Sr. Caractère et description
1

.

un seul personnage

2

\s

un caractère d'espacement (espace, tabulation, nouvelle ligne)

3

\S

caractère non blanc

4

\d

un chiffre (0-9)

5

\D

un non-chiffre

6

\w

un caractère de mot (az, AZ, 0-9, _)

sept

\W

un caractère autre qu'un mot

8

[\b]

un retour arrière littéral (cas particulier).

9

[aeiou]

correspond à un seul caractère dans l'ensemble donné

dix

[^aeiou]

correspond à un seul caractère en dehors de l'ensemble donné

11

(foo|bar|baz)

correspond à l'une des alternatives spécifiées

Modificateurs

Plusieurs modificateurs sont disponibles qui peuvent simplifier la façon dont vous travaillez avec regexps, comme la sensibilité à la casse, la recherche sur plusieurs lignes, etc.

N ° Sr. Modificateur et description
1

i

Effectuez une correspondance insensible à la casse.

2

m

Spécifie que si la chaîne contient des caractères de retour à la ligne ou de retour chariot, les opérateurs ^ et $ correspondent désormais à une limite de nouvelle ligne, au lieu d'une limite de chaîne

3

g

Effectue une correspondance globale, c'est-à-dire rechercher toutes les correspondances plutôt que de s'arrêter après la première correspondance.

Propriétés RegExp

Voici une liste des propriétés associées à RegExp et leur description.

N ° Sr. Propriété et description
1 constructor

Specifies the function that creates an object's prototype.

2 global

Specifies if the "g" modifier is set.

3 ignoreCase

Specifies if the "i" modifier is set.

4 lastIndex

The index at which to start the next match.

5 multiline

Specifies if the "m" modifier is set.

6 source

The text of the pattern.

In the following sections, we will have a few examples to demonstrate the usage of RegExp properties.

RegExp Methods

Here is a list of the methods associated with RegExp along with their description.

Sr.No. Method & Description
1 exec()

Executes a search for a match in its string parameter.

2 test()

Tests for a match in its string parameter.

3 toSource()

Returns an object literal representing the specified object; you can use this value to create a new object.

4 toString()

Returns a string representing the specified object.

In the following sections, we will have a few examples to demonstrate the usage of RegExp methods.