1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
| # Pour tester si une chaîne est un nombre romain.
# La méthode vient du livre "Dive into Python".
romanNumeralPattern = re.compile('''
^ # beginning of string
M{0,4} # thousands - 0 to 4 M's
(CM|CD|D?C{0,3}) # hundreds - 900 (CM), 400 (CD), 0-300 (0 to 3 C's),
# or 500-800 (D, followed by 0 to 3 C's)
(XC|XL|L?X{0,3}) # tens - 90 (XC), 40 (XL), 0-30 (0 to 3 X's),
# or 50-80 (L, followed by 0 to 3 X's)
(IX|IV|V?I{0,3}) # ones - 9 (IX), 4 (IV), 0-3 (0 to 3 I's),
# or 5-8 (V, followed by 0 to 3 I's)
$ # end of string
''' ,re.VERBOSE)
if maChaine.isupper():
if romanNumeralPattern.search(motDeb):
# C'est ok.
elif motDeb.islower():
if romanNumeralPattern.search(motDeb.upper()):
# C'est ok. |
Partager