Maison > interface Web > js tutoriel > Comment rendre vos correspondances Regex JavaScript insensibles à la casse ?

Comment rendre vos correspondances Regex JavaScript insensibles à la casse ?

Barbara Streisand
Libérer: 2024-11-01 14:52:02
original
273 Les gens l'ont consulté

How to Make Your JavaScript Regex Matches Case-Insensitive?

Effectuer des correspondances Regex insensibles à la casse en JavaScript

Lorsque vous travaillez avec des URL, il est souvent nécessaire d'extraire les données de la chaîne de requête. En JavaScript, utiliser des expressions régulières pour effectuer cette extraction peut être simple, mais garantir le respect de la casse peut s'avérer difficile.

Dans cet article, nous explorons un problème courant dans lequel une comparaison sensible à la casse pourrait conduire à des résultats incohérents. Considérons l'extrait de code suivant :

var results = new RegExp('[\?&]' + name + '=([^&#]*)').exec(window.location.href);
if (!results) { return 0; }
return results[1] || 0;
Copier après la connexion

Ce code est destiné à extraire la valeur d'un paramètre de chaîne de requête nommé « nom » de l'URL actuelle. Cependant, il n'effectue pas de comparaison insensible à la casse pour le nom de la chaîne de requête, ce qui pourrait entraîner un comportement inattendu si le nom est saisi avec une casse différente.

Pour résoudre ce problème, nous pouvons utiliser le « i » modificateur dans notre expression régulière pour rendre la comparaison insensible à la casse. Ce modificateur doit être ajouté immédiatement après la dernière barre oblique dans l'expression régulière, comme indiqué ci-dessous :

var results = new RegExp('[\?&]' + name + '=([^&#]*)', 'i').exec(window.location.href);
Copier après la connexion

En incluant le modificateur « i », l'expression régulière ignorera désormais la casse du nom de la chaîne de requête. , garantissant que la comparaison réussira quelle que soit la casse de l'entrée.

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!

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
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal