Exercice: Expressions régulières et Dinosaures¶
In [1]:
list_of_dinosaurs = """Velociraptor
Cryolophosaurus
Dilophosaurus
Spinosaurus
Suchomimus
Baryonyx
Irritator
Utahraptor
Sinotyrannus
Chilantaisaurus
Shaochilong
Dilong
Allosaurus
Ceratosaurus
Torvosaurus
Sinraptor
Acrocanthosaurus
Tyrannotitan
Carcharodontosaurus
Mapusaurus
Giganotosaurus
Megaraptor
Skorpiovenator
Neovenator
Afrovenator
Carnotaurus
Abelisaurus
Coelophysis
Megalosaurus
Dromaeosaurus
Achillobator
Eocarcharia
Kryptops
Rugops
Rajasaurus
Spinosaurus
Tyrannosaurus
Tarbosaurus
Daspletosaurus
Gorgosaurus
Albertosaurus
Alioramus
Appalachiosaurus
Zhuchengtyrannus
Dryptosaurus
Alectrosaurus
"""
In [2]:
import re
In [ ]:
# Écrire une regexp qui trouve tous les raptors
In [6]:
for match in re.findall('[A-za-z]+raptor', list_of_dinosaurs):
print(match)
In [ ]:
# Écrire une regexp qui trouve tous les 'saure qui commencent avec un A majuscule
In [8]:
for match in re.findall('A[a-z]+saurus', list_of_dinosaurs):
print(match)
In [ ]:
# Écrire une regexp qui trouve les gros (mega) 'saure et raptors
In [16]:
for match in re.finditer('(Mega[a-z]*)(saurus|raptor)', list_of_dinosaurs):
print('-----')
print(match.group(), match.start(), match.end())
print(match.group(1), match.start(1), match.end(1))
print(match.group(2), match.start(2), match.end(2))