80 votes

Inclure un trait d’union dans un crochet de caractère regex?

<pre><code></code><p><code></code><code></code><code></code></p></pre>

131voto

Mark Byers Points 318575

Échapper à l’utilisation `` devrait être très bien, mais vous pouvez également essayer de le mettre au début ou à la fin de la classe de caractères. Cela devrait fonctionner pour vous:

39voto

Guffa Points 308133

Échapper le trait d’union à l’aide `` est la bonne façon.

J’ai vérifié que l’expression autorise les traits d’union. Vous pouvez également utiliser la classe pour la raccourcir à `` .

(En plaçant le trait d’union en dernier dans l’expression, il ne nécessite pas d’échappement, car il ne peut alors pas faire partie d’une plage, mais vous voudrez peut-être toujours prendre l’habitude de toujours l’échapper.)

4voto

SinistraD Points 2080

Le - ne fonctionnait peut-être pas parce que vous avez passé le tout à partir du serveur avec une chaîne. Si c’est le cas, vous devez d’abord échapper le \ afin que le programme côté serveur puisse également le gérer.

  • Dans une chaîne côté serveur : \-
  • Côté client : -
  • En regex (couvertures) : -

Ou vous pouvez simplement mettre au et des crochets [] .

2voto

T.J. Crowder Points 285826

devrait fonctionner pour échapper à la dans la plage de caractères. Pouvez-vous citer ce que vous avez testé quand il ne semblait pas? Parce que cela semble fonctionner: http://jsbin.com/odita3

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