Je veux utiliser JavaScript (peut être avec jQuery) pour faire une validation côté client pour vérifier si une chaîne correspond à l'expression régulière:
^([a-z0-9]{5,})$
Idéalement, ce serait une expression qui retournerait vrai ou faux.
Je suis un débutant JavaScript, fait match()
ce dont j'ai besoin? Il semble vérifier si une partie d'une chaîne correspond à une expression régulière, et non pas le tout.
javascript
regex
match
Richard
la source
la source
Réponses:
A utiliser
regex.test()
si tout ce que vous voulez est un résultat booléen:... et vous pouvez supprimer le
()
de votre regexp puisque vous n'avez pas besoin d'une capture.la source
Utilisez la
test()
méthode:la source
RegExp
permet d'injecter des valeurs variables dans la chaîne d'expression régulière.new RegExp("^([a-z0-9]{5,})$")
afin de le faire fonctionnerVous pouvez également utiliser
match()
:Mais
test()
semble être plus rapide comme vous pouvez le lire ici .Différence importante entre
match()
ettest()
:match()
fonctionne uniquement avec des chaînes, maistest()
fonctionne également avec des entiers.la source
match
membre). Je recommanderais de convertir explicitement votre numéro en une chaîne si vous souhaitez l'utiliser avec une expression régulière (String(123)
par exemple).test
fonctionne 30% mieux lorsque nous voulons simplement valider une chaîne pour correspondre à l'expression régulière et non en extraire des sous-chaînes.Utilisez-le
/youregexp/.test(yourString)
si vous voulez seulement savoir si votre chaîne correspond à l'expression rationnelle.la source
Voici un exemple qui recherche certaines balises HTML, il est donc clair que
/someregex/.test()
renvoie un booléen:la source
la source
Vous pouvez essayer ça, ça marche pour moi.
la source
veuillez essayer cette fleur:
la source
essayer
Afficher l'extrait de code
la source
0-9
réduction peut être effectuée aaaaaaaaaaaaaaaaaaaaaa\d
. Oh, et qu'un groupe de capture n'est pas nécessaire.Je recommanderais d'utiliser la méthode execute qui retourne null si aucune correspondance n'existe sinon elle retourne un objet utile.
la source
la source