RegexProgram, un outil en ligne de commande pour se familiariser avec les expressions régulières

Introduction

Je viens de découvrir RegexProgram, il s’agit outil plutôt bien foutu, écrit en C++, interactif, qui comme son nom l’indique, est destiné aux programmeurs qui débutent avec les expressions régulières

Le programme permet de s’entraîner avec 10 cas d’utilisations, ainsi que de les modifier et de créer ses propres cas en éditant/créant des fichiers texte (voir les dix exemples fournis pour la syntaxe)
Les cas d’utilisations sont sous formes de 10 problèmes à résoudre, et on ne peut passer au suivant qu’après avoir résolu un problème

Installation et exécution sous Debian

$ su
[PASSWORD]
# apt-get install libboost-regex-dev libncurses5-dev && exit && wget -c -O regexProgram.zip https://github.com/Liniarc/regexProgram/archive/master.zip && unzip regexProgram.zip && cd regexProgram-master && make

Si c’est pas déjà fait sur votre système, on commence par installer les librairies libboost-regex-dev libncurses5-dev qui correspondent respectivement au packages développeurs des librairie C++ Boost et ncurses, qui sont des dépendances pour RegexProgram

Juste pour info, le code source de RegexProgram à besoin du header curses.h (/usr/include/curses.h) qui s’installe avec le package libncurses5-dev

Ensuite on quitte l’user root pour passer en utilisateur normal et on récupère avec l’outil wget l’archive zip avec le code source de RegexProgram pour le compiler, ainsi qu’un Makefile, une doc et un dossier contenant les des cas d’utilisations d’expressions régulières
L’option -c permet de reprendre le téléchargement en cas d’interruption/reprendre le téléchargement d’un fichier partiellement récupéré (je fais l’installation avec une connexion UMTS… on sait jamais!) et l’option -O permet de spécifier un nom sous lequel enregistrer le fichier récupéré

La commande unzip comme son nom l’indique, permet de de-zipper l’archive qu’on vient de récupérer avec wget (regexProgram.zip)

Enfin on va dans le répertoire regexProgram-master et le compile avec la commande make

La commande && entre chaque commande, indique au shell de passer à la commande suivante qui si la commande qui procède s’est exécute correctement

Enfin, on execute le programme compilé avec la commande

$ ./regex