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.