Maison > interface Web > js tutoriel > le corps du texte

La signification et l'utilisation des expressions régulières en JavaScript

黄舟
Libérer: 2017-11-09 16:52:04
original
1924 Les gens l'ont consulté

Je crois que beaucoup de gens connaissent les expressions régulières, mais la première impression de beaucoup de gens est que c'est difficile à apprendre, car à première vue, ils ont l'impression qu'il n'y a pas de modèle du tout, et c'est tout un un tas de divers Toutes sortes de symboles spéciaux sont complètement incompréhensibles. En fait, les expressions régulières ne sont pas aussi difficiles que vous le pensez. Aujourd'hui, nous allons vous amener à comprendre rapidement les expressions régulières JavaScript !

1. Qu'est-ce qu'une expression régulière

L'expression régulière est une chaîne spéciale Le motif est utilisé pour faire correspondre un ensemble de chaînes, ce qui revient à utiliser un moule pour fabriquer un produit, et les règles régulières sont ce moule, définissant une règle pour faire correspondre les caractères qui correspondent aux règles.

L'expression régulière (expression régulière) décrit un modèle de correspondance de chaîne (modèle), qui peut être utilisé pour vérifier si une chaîne contient une certaine sous-chaîne, remplacer la sous-chaîne correspondante ou sélectionner parmi une certaine chaîne Obtenir des sous-chaînes qui. remplir certaines conditions, etc.

Pour parler franchement, les expressions régulières sont utilisées pour traiter des chaînes. Nous pouvons l'utiliser pour traiter certaines chaînes complexes.

2. Règles d'expression régulière

1.1 Caractères ordinaires

Les lettres, chiffres, caractères chinois, traits de soulignement et signes de ponctuation non spécifiquement définis dans les chapitres suivants sont tous des « caractères ordinaires ». Les caractères ordinaires dans une expression, lorsqu'ils correspondent à une chaîne, correspondent au même caractère.

Exemple 1 : L'expression « c », lors de la correspondance avec la chaîne « abcde », le résultat de la correspondance est : succès ; le contenu correspondant est : « c » la position correspondante est : commençant à 2, terminé à 3. (Remarque : le fait que l'indice commence à 0 ou à 1 peut différer selon le langage de programmation actuel)

Exemple 2 : L'expression "bcd" correspond à la chaîne "abcde" ", la correspondance le résultat est : succès ; le contenu correspondant est : "bcd" ; la position correspondante est : commençant à 1 et se terminant à 4.

3. Caractères spéciaux dans les expressions régulières

Signification du caractère

est utilisé comme un changement de sens, c'est-à-dire que les caractères après "" ne sont généralement pas interprétés selon le sens d'origine. Par exemple, /b/ correspond au caractère "b" lorsqu'une barre oblique inverse est ajoutée devant. b, /b/, le sens du changement est de faire correspondre les limites d'un mot.
-ou-
Restauration des caractères de fonction d'expression régulière, tels que "*" correspondant au métacaractère qui le précède 0 fois ou plus, /a*/ correspondra à a, aa, aaa, après avoir ajouté "" , /a */ ne correspondra qu'à "a*".

^ correspond à une entrée ou au début d'une ligne, /^a/ correspond à "un A", mais ne correspond pas à "An a"
$ correspond à une entrée ou à la fin d'une ligne, / a$/ correspond à "An a", ne correspond pas à "an A"
* correspond au métacaractère précédent 0 fois ou plus, /ba*/ correspondra à b,ba,baa,baaa
+ correspond au métacaractère précédent 1 ou plusieurs fois, /ba*/ correspondra à ba,baa,baaa
 ? Correspond au métacaractère précédent 0 ou 1 fois, /ba*/ correspondra à b,ba
(x) Correspond à x et enregistre x dans un fichier nommé $1 ... Dans la variable $9,
x|y correspond à x ou y
{n} correspond exactement n fois
{n,} correspond à n fois ou plus
{n ,m} correspond à n-m fois
[xyz] jeu de caractères, correspond à n'importe quel caractère (ou métacaractère) de cet ensemble
[^xyz] ne correspond à aucun caractère de cet ensemble
[b] correspond à un caractère de retour arrière
b correspond à une limite de mot
B correspond à une limite autre qu'un mot
cX Ici, X est un caractère de contrôle, /cM/ correspond à Ctrl-M
d correspond à un caractère alphanumérique, /d/ = /[0-9]/
D correspond à un caractère non alphanumérique, /D/ = /[^0-9]/
n correspond à un caractère de nouvelle ligne
r correspond à un retour chariot Le symbole
s correspond à un caractère d'espacement, y compris n, r, f, t, v, etc.
S correspond à un caractère autre qu'un espace, égal à /[^nfrtv]/
t correspond à un caractère de tabulation
v correspond à un caractère à double tabulation
w correspond à un caractère pouvant former un mot (alphanumérique, c'est ma traduction gratuite, y compris les chiffres), y compris les traits de soulignement. Par exemple, [w] correspond au 5 dans "$5.98", qui est. égal à [a -zA-Z0-9]
W correspond à un caractère qui ne peut pas former un mot. Par exemple, [W] correspond au $ dans "$5.98", qui est égal à [^a-zA-Z0-. 9].

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

Deux symboles spéciaux '^' et '$' . Leur fonction est d'indiquer respectivement le début et la fin d'une chaîne.

Les exemples sont les suivants :

"^The" : représente toutes les chaînes commençant par "The" ("Là", "Le chat", etc.) ; "of despair$" : représente une chaîne qui se termine par "of despair" ;

"^abc$" : représente une chaîne qui commence et se termine par "abc" - haha, il n'y a que "abc" lui-même . ;

"notice": Représente toute chaîne contenant "notice".

Comme le dernier exemple, si vous n'utilisez pas deux caractères spéciaux, vous indiquez que la chaîne que vous souhaitez trouver fait partie de la chaîne recherchée - vous ne la

la positionnez en haut d'un certain.


D'autres symboles incluent « * », « + » et « ? », qui représentent le nombre de fois qu'un caractère ou une séquence de caractères apparaît de manière répétée.

Ils signifient respectivement "aucun ou plus", "une ou plusieurs" et "aucun ou une fois".


Voici quelques exemples :

"ab*" : Indique qu'une chaîne a un a suivi de zéro ou de plusieurs b. ("a", "ab", "abbb",...);

"ab+" : Indique qu'une chaîne a un a suivi d'au moins un b ou plus ; " ab?" : Indique qu'une chaîne a un a suivi de zéro ou un b

"a?b+$" : Indique qu'il y a zéro ou un a suivi d'un ou plusieurs b à la fin de la chaîne.

Vous pouvez également utiliser des plages, entre accolades, pour indiquer la plage de répétitions.

"ab{2}" : Indique qu'une chaîne a un a suivi de 2 b ("abb");

"ab{2,}" : Indique qu'une chaîne a un a suivi d'au moins 2 b;

"ab{3,5}": Indique qu'une chaîne a un a suivi de 3 à 5 b.

Veuillez noter que vous devez préciser la limite inférieure de la plage (ex : "{0,2}" au lieu de "{,2}").

De plus, vous avez peut-être remarqué que '*', '+' et '?' sont équivalents à "{0,}", "{1,}" et "{0,1}".

Il y a aussi un '¦', qui signifie opération "ou" :

"salut¦hello" : signifie qu'il y a "salut" ou "hello" dans une chaîne

"(b¦cd)ef": signifie "bef" ou "cdef"

"(a¦b)*c": signifie une chaîne de chaînes mixtes de "a" et "b" " suivi de A "c";

'.' peut remplacer n'importe quel caractère :

"a.[0-9]" : indique qu'une chaîne a un "a" suivi d'un caractère arbitraire et un nombre

"^.{3}$" : représente une chaîne de trois caractères quelconques (la longueur est de 3 caractères

) ;

Les crochets indiquent que certains caractères sont autorisés à apparaître à une position spécifique dans une chaîne :

"[ab]" : indique qu'une chaîne a un "a" ou un "b" (équivalent à " a¦b");

"[a-d]": Indique qu'une chaîne contient un 'a' minuscule à 'd' (équivalent à "a¦b¦c¦d" ou " [abcd] ");

"^[a-zA-Z]": représente une chaîne commençant par une lettre;

"[0-9]%": représente une centaine Il y a un chiffre avant le point-virgule ;

",[a-zA-Z0-9]$" : indique qu'une chaîne se termine par une virgule suivie d'une lettre ou d'un chiffre.

Vous pouvez également utiliser « ^ » entre crochets pour indiquer que les caractères indésirables « ^ » doivent être le premier entre crochets.

(par exemple : "%[^a-zA-Z]%" signifie que les lettres ne doivent pas apparaître entre les signes de deux pour cent).

Afin de l'exprimer textuellement, vous devez ajouter le caractère d'échappement '' avant ces caractères "^.$()¦*+?{".

Veuillez noter qu'entre crochets, aucun caractère d'échappement n'est requis.

Résumé

En fait, je ne comprends tout simplement pas les expressions régulières. Vous constaterez que c'est tout. Il n'y a pas beaucoup de caractères liés utilisés dans les expressions régulières, et ils ne sont pas difficiles à retenir ou à comprendre. La seule difficulté est qu'après les avoir combinés, la lisibilité est relativement mauvaise et ce n'est pas facile. Comprendre Cet article est conçu pour permettre à chacun d'avoir une compréhension de base des expressions régulières, d'être capable de comprendre des expressions régulières simples et d'écrire des expressions régulières simples pour répondre aux besoins du développement quotidien.

Recommandations associées :

Quelles sont les expressions régulières couramment utilisées en js

Tutoriel vidéo sur les expressions régulières JavaScript

Définition et introduction de l'expression régulière Javascript

Comment être flexibleUtiliser JavaScriptExpressions régulières

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!

Étiquettes associées:
source:php.cn
Déclaration de ce site Web
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
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal
À propos de nous Clause de non-responsabilité Sitemap
Site Web PHP chinois:Formation PHP en ligne sur le bien-être public,Aidez les apprenants PHP à grandir rapidement!