Comprendre l'expression régulière "[^][]" :
L'expression régulière "[^][]" dans le modèle fourni "[(?:[^][]|(?R))*]" correspond à tous les caractères qui ne sont pas des crochets ([ ou ]).
Explication :
Considérations uniques :
Contrairement aux autres moteurs de regex, PCRE (utilisé dans les fonctions "preg_" de PHP) ne nécessite pas d'échappement [ ou ] dans une classe de caractères. En effet, PCRE les distingue des autres classes de caractères.
De plus, le modèle regex "[^]]" n'est pas ambigu car ] est le premier caractère. Cela signifie qu'il correspond aux caractères suivis d'un ]. Pour faire correspondre un a suivi de ], écrivez 1.
Optimisation du motif :
Pour rendre le motif plus réutilisable et efficace, il peut être optimisé de la manière suivante :
Variations selon la programmation Langues :
Le modificateur "xx" en ligne, introduit dans PHP 7.3, permet d'ignorer les espaces dans les classes de caractères. Cependant, cette syntaxe n'est pas prise en charge par toutes les versions d'expressions régulières, telles que Ruby et JavaScript. En JavaScript, en particulier, "[]" est un jeton qui ne correspond toujours pas, et "[^]" correspond à n'importe quel caractère.
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!