78 votes

Quelle est la différence entre () et [] dans les modèles d'expression régulière ?

Quelle est la différence entre encapsuler une partie d'une expression régulière dans () (parenthèses) et le faire dans [] (crochets) ?

Comment ça :

 [a-z0-9]

diffère de ceci :

 (a-z0-9)

?

9voto

mkb Points 7558

[a-z0-9] correspondra à n'importe quelle lettre ou chiffre minuscule. (a-z0-9) correspondra à la chaîne exacte "a-z0-9" et permet deux choses supplémentaires : Vous pouvez appliquer des modificateurs comme * et ? et + à l'ensemble du groupe, et vous pouvez référencer ce match après le match avec $1 ou \1 . Pas utile avec votre exemple, cependant.

1voto

burkestar Points 518

Essayez ([a-z0-9]) de capturer une chaîne mixte de lettres minuscules et de chiffres, ainsi que de capturer pour les références arrière (ou l'extraction).

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X