Quelle est l'expression régulière qui correspond à un crochet carré?


95

Je veux une expression régulière qui correspond à un crochet carré [. Je n'en ai pas encore trouvé. Je pense que j'ai essayé toutes les possibilités, mais je n'ai pas trouvé la bonne. Qu'est-ce qu'une expression régulière valide pour cela?

Réponses:


111

Que diriez-vous d'utiliser une barre oblique inverse \devant le crochet carré. Normalement, les crochets correspondent à une classe de caractères.


20
Si vous essayez d'écrire cette expression régulière en C #, vous devez utiliser \\ devant le crochet carré.
Shrewdroid

4
En fait, je ne sais pas où cela fonctionne et pourquoi la réponse a-t-elle reçu un rang aussi élevé.
Vitali Pom

45

Essayez d'utiliser \\[, ou simplement \[.


15

Si vous souhaitez faire correspondre une expression commençant par [et se terminant par ], utilisez \[[^\]]*\].



6

En général, lorsque vous avez besoin d'un caractère "spécial" dans les expressions régulières, préfixez-le simplement avec un \. Donc, un littéral [serait \[.


5

Si vous cherchez à trouver les variations des crochets en même temps, vous pouvez utiliser le modèle suivant qui définit une plage de soit le [signe ou le ]signe:/[\[\]]/


Vous pouvez omettre la première barre oblique inverse. [[\]]correspondra à l'un ou l'autre support. Dans certains dialectes regex (par exemple grep) vous pouvez omettre la barre oblique inverse avant ]si vous le placez immédiatement après la [(parce qu'une classe de caractères vide ne serait jamais utile): [][]. Mais cela ne fonctionne pas en Java ou en JavaScript.
cayhorstmann le

3

fonctionne-t-il avec un antislash avant le [?

\[ou \\[?


1

Si vous souhaitez supprimer le [ou ], utilisez l'expression: "\\[|\\]".

Les deux barres obliques inverses échappent au crochet carré et le tube est un "ou".

En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.