Maison >interface Web >js tutoriel >Comment obtenir une assertion Look Behind en JavaScript ?

Comment obtenir une assertion Look Behind en JavaScript ?

Mary-Kate Olsen
Mary-Kate Olsenoriginal
2024-11-08 20:23:02696parcourir

How to Achieve Look Behind Assertion in JavaScript?

JavaScript Regex : alternative à l'assertion Look Behind

En JavaScript, l'apparence derrière l'assertion (?) est pas pris en charge. Cette assertion est utile pour faire correspondre un modèle précédé d'une condition spécifique. Cependant, il existe d'autres moyens d'obtenir le même résultat en JavaScript.

Une alternative consiste à utiliser le modèle ^ et (?!). Le symbole ^ correspond au début d'une chaîne, tandis que le (?!) vérifie si l'expression suivante ne correspondra pas à la position actuelle. Par exemple, l'expression régulière suivante correspond à n'importe quelle chaîne se terminant par .js, à l'exception de filename.js :

^(?:(?!filename\.js$).)*\.js$

Cette expression régulière vérifie explicitement chaque caractère de la chaîne pour s'assurer qu'il ne satisfait pas à la condition de recherche derrière .

Une autre alternative plus simple introduite dans ECMAScript 2018 consiste à utiliser ce qui suit regex :

^(?!.*filename\.js$).*\.js$

Cette regex utilise l'expression . pour correspondre à n'importe quelle chaîne, et l'assertion (?!) pour vérifier que l'expression suivante (.filename.js $) ne correspondra pas à la position actuelle. Cette alternative est plus efficace que la première, car elle ne nécessite pas de vérifier la condition à chaque 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!

Déclaration:
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