Expressions régulières·un chiffre romain

un chiffre romain

Correspond à un chiffre romain. Il est ancré aux deux bouts : la chaîne entière doit correspondre. Il n’y a pas de groupe capturant.

Motif
/^M{0,3}(?:CM|CD|D?C{0,3})(?:XC|XL|L?X{0,3})(?:IX|IV|V?I{0,3})$/
Portée
la chaîne entière
Groupes capturants
0
Ce qu’il capture dans le premier exemple
XIV

Essayez

Tapez un texte : les parties capturées sont surlignées. Tout se passe dans votre navigateur, rien n’est envoyé.

XIV

1 correspondance

Exemples qui correspondent

  • XIV
  • MMXXIV

Exemples qui ne correspondent pas

  • IIII
  • ABC

Autres expressions du groupe

Comment lire

  • Avec ^ et $, la chaîne entière doit correspondre ; sans eux, le motif peut se trouver n’importe où. Ancrez toujours ce qui sert à valider.
  • Les parenthèses ( ) capturent ce qu’elles entourent. Pour seulement grouper, écrivez (?: ) afin que la numérotation ne se décale pas.
  • Chaque expression ici est confrontée à ses exemples. Cela dit, « ressemble à un e-mail » et « est une vraie boîte » sont deux choses.
  • Les répétitions ouvertes imbriquées comme (a+)+ peuvent exploser sur certaines entrées. Repérez cette forme avant de coller l’expression d’autrui.

Questions fréquentes

Q. Quelle est la regex pour un chiffre romain ?

^M{0,3}(?:CM|CD|D?C{0,3})(?:XC|XL|L?X{0,3})(?:IX|IV|V?I{0,3})$.

Q. Quelles chaînes correspondent ?

Un texte comme XIV correspond ; un texte comme IIII non.

Q. La chaîne entière doit-elle correspondre ?

Oui. Elle est encadrée par ^ et $ : seule une correspondance complète passe.

Q. Comment utiliser ce qui est capturé ?

Il n’y a pas de groupe capturant : seule la correspondance entière (match[0]) revient. Mettez entre parenthèses la partie voulue.