Maison > interface Web > js tutoriel > Comment échapper ou positionner correctement un trait d'union entre parenthèses de caractères d'expression régulière ?

Comment échapper ou positionner correctement un trait d'union entre parenthèses de caractères d'expression régulière ?

Barbara Streisand
Libérer: 2024-11-30 13:38:14
original
389 Les gens l'ont consulté

How to Properly Escape or Position a Hyphen in Regular Expression Character Brackets?

Traits d'union entre parenthèses de caractères d'expression régulière

Lors de la définition d'une parenthèse de caractère d'expression régulière, il peut être difficile d'inclure le trait d'union (-) . En effet, le trait d'union est utilisé comme opérateur de plage dans les expressions régulières, indiquant une plage de caractères à correspondre. Pour inclure un trait d'union littéral entre crochets de caractères, il doit être échappé à l'aide d'une barre oblique inverse ().

Dans votre cas, l'expression régulière :

/^[a-zA-Z0-9.-_]+$/
Copier après la connexion

tente de faire correspondre les chaînes qui ne font que contiennent des lettres, des chiffres, des points (.) et le trait d'union (-). Cependant, en raison du placement du trait d'union entre parenthèses de caractères, il est traité comme un opérateur de plage, ce qui entraîne la correspondance d'une plage de caractères entre "a" et "-".

Pour corriger cela , vous pouvez échapper le trait d'union à l'aide d'une barre oblique inverse, comme le montre l'expression régulière modifiée suivante :

/^[a-zA-Z0-9.\-_-]+$/
Copier après la connexion

Cela garantira que le trait d'union est traité comme un caractère littéral et non comme un opérateur de plage. Alternativement, vous pouvez placer le trait d'union au début ou à la fin de la parenthèse de caractères, comme indiqué ci-dessous :

/^[.-a-zA-Z0-9_]+$/
Copier après la connexion

En modifiant l'emplacement du trait d'union, vous pouvez l'inclure avec succès dans la parenthèse de caractères et vous assurer que il correspond littéralement dans votre expression de validation.

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