17.12.2012 Views

Programmation PYTHON - Zenk - Security - Repository

Programmation PYTHON - Zenk - Security - Repository

Programmation PYTHON - Zenk - Security - Repository

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

354<br />

La bibliothèque standard<br />

TROISIÈME PARTIE<br />

Il faut concevoir un programme qui transforme un fichier texte en un deuxième<br />

fichier texte, en appliquant cette modification. Le programme affiche aussi sur la<br />

sortie standard les modifications effectuées.<br />

Points abordés<br />

Expressions régulières, traitement de fichiers, directive with.<br />

Solution<br />

Remplace e-mails et URL<br />

#!/usr/bin/python<br />

# -*- coding: utf8 -*import<br />

re<br />

import sys<br />

FIND_LINK = r'(?Phttps|ftp|http+://+[^ \t\n\r\f\v\ %s' % (value, res))<br />

return res<br />

if __name__ == '__main__':<br />

filename = sys.argv[1]<br />

text = open(filename).read()<br />

with open('res_%s' % filename, 'w') as result:<br />

result.write(FIND.sub(_replace, text))<br />

Discussion<br />

Lorsque la manipulation de texte devient un peu plus complexe que de simples<br />

recherches de sous-séquences constantes de caractères, les expressions régulières sont<br />

alors incontournables. Elles recherchent des motifs grâce à un langage de description<br />

complet qui décrit les motifs de texte à retrouver.

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!