Prise de contact avec lex : Différence entre versions

De Wicri Manuel
imported>Jacques Ducloy
imported>Jacques Ducloy
(Un premier exemple)
Ligne 6 : Ligne 6 :
 
* [[Prise de contact avec le langage C]]
 
* [[Prise de contact avec le langage C]]
 
==Un premier exemple==
 
==Un premier exemple==
 +
Lex est un générateur d'analyseurs lexicaux. Il est basé sur un ensemble de règles de reconnaissance lexicale auxquelles sont associées des instructions en langage C. L'analyseur Lex produit un programme C (qui sera ensuite compilé).
 +
 +
Dans les cas simples il permet d'effectuer des substitutions. Voici un exemple, montrant comment créer un fichier source lex :
 +
 +
<source lang="lex">
 +
cat <<... >ortho.lex
 +
%%
 +
chevals    printf("chevaux");
 +
hibous      printf("hiboux");
 +
%%
 +
main() {
 +
  yylex();
 +
}
 +
...
 +
</source>

Version du 9 juin 2020 à 18:11

Principe de fonctionnement de lex

Lex est un générateur d'analyseurs lexicaux. Il est étroitement associé, dans son fonctionnement, au langage C et disponible en standard sur les systèmes Unix.

En sciences de l'information, il est utilisé notamment pour faire des reformatages et des filtres de sélection.

Pré-requis

Un premier exemple

Lex est un générateur d'analyseurs lexicaux. Il est basé sur un ensemble de règles de reconnaissance lexicale auxquelles sont associées des instructions en langage C. L'analyseur Lex produit un programme C (qui sera ensuite compilé).

Dans les cas simples il permet d'effectuer des substitutions. Voici un exemple, montrant comment créer un fichier source lex :

cat <<... >ortho.lex
%%
chevals     printf("chevaux");
hibous      printf("hiboux");
%%
main() {
  yylex();
}
...