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

Analyse de l'utilisation de plusieurs lignes (/m) dans le modificateur d'expression régulière JS

高洛峰
Libérer: 2017-01-09 15:36:49
original
1182 Les gens l'ont consulté

Cet article analyse l'utilisation de multiline(/m) dans le modificateur d'expression régulière JS. Partagez-le avec tout le monde pour référence, les détails sont les suivants :

Les expressions régulières JavaScript ont trois modificateurs /i, /m et /g. /i est le plus couramment utilisé et le mieux compris, ce qui signifie que les expressions régulières ne sont pas sensibles à la casse lors de la correspondance.

var regex = /abc/i;
alert(regex.test("aBc"));//true
Copier après la connexion

/m représente le mode multiligne multiligne Si la chaîne cible ne contient pas le caractère de nouvelle ligne n, c'est-à-dire qu'il n'y a qu'une seule ligne, alors le modificateur /m n'a aucun sens.

var multiline = /abc/m;
var singleline = /abc/;
//目标字符串不含换行符\n
var target = "abcabcabc";
Copier après la connexion

Si l'expression régulière ne contient pas ^ ou $ pour correspondre au début ou à la fin de la chaîne, alors le modificateur /m n'a aucune signification.

//正则表达式不含^或$
var multiline = /abc/m;
var singleline = /abc/;
var target = "abcab\ncabc";
Copier après la connexion

C'est-à-dire que le modificateur /m n'est disponible que lorsque la chaîne cible contient n et que l'expression régulière contient un effet ^ ou $. Si multiline est faux, "^" correspond au début de la chaîne et "$" correspond à la fin de la chaîne. Si multiline est vrai, "^" correspond au début de la chaîne et à la position après "n" ou "r", et "$" correspond à la fin de la chaîne et à la position avant "n" ou "r" .

var mutiline = /^abc/m;
var singleline = /^abc/;
var target = "ef\r\nabcd";
alert(mutiline.test(target));//true
alert(singleline.test(target));//false
Copier après la connexion

rn représente un saut de ligne sous Windows S'il n'y a que 1 n, cela a le même effet. Puisque la cible n'est pas une chaîne commençant par abc, le résultat de la correspondance sur une seule ligne est faux ; parce que la cible est une chaîne multiligne (contenant n) et que la deuxième ligne commence par abc, le résultat de la correspondance sur une ligne unique est vrai.

J'espère que cet article sera utile à tout le monde dans la programmation JavaScript.

Pour plus d'articles liés à l'analyse de l'utilisation de multiline(/m) dans les modificateurs d'expressions régulières JS, veuillez faire attention au site Web PHP 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