Javascript conditionnelle expression régulière si-alors-sinon

J'essaie de limiter les entrées à un format spécifique.

Si l'entrée a 5500 ou 5100 comme 01\01-5500-000-00 alors je veux:

^[0-9]{2,}\\[0-9]{2}\-[0-9]{4}\-[0-9]{3}\-$

Mais si l'entrée a rien d'autre que de 5500 ou 5100 je veux:

^[0-9]{2,}\\[0-9]{2}\-[0-9]{4}\-[0-9]{3}\-[0-9]{2}$

Comment cela peut-il être accompli avec le si d'autre idée?

  • Quelle langue utilisez-vous? Qu'avez-vous essayé?
  • ^[0-9]{2,}\\[0-9]{2}-5[15]00-[0-9]{3}-$|^[0-9]{2,}\\[0-9]{2}-(?!5[15]00)[0-9]{4}-[0-9]{3}-[0-9]{2}$
  • J'ai utilisé webtoolkitonline.com/regular-expression-tester.html pour m'aider à créer correctement l'expression. Et j'ai essayé d'utiliser le tuyau avec 5500 entre parenthèses comme ceci: (?=.*5500)|^[0-9]{2,}\[0-9]{2}\-[0-9]{4}\-[0-9]{3}\-[0-9]{2}$ - pas correct
  • Cet outil prend en charge uniquement JS que je peux voir. Mais il est encore possible.
  • Par la voie, 01\01-5500-000-00 ne correspond pas à votre premier modèle. est-il censé à l'échec? Aussi, est la fuite "-" dans le premier modèle intentionnel?
InformationsquelleAutor user974061 | 2015-09-29