Salut,
Je vais essayer d’être le plus clair![]()
J'essaye de réaliser un analyseur lexical. J'ai un texte que j'ai découpé avec split et j'ai mis tous les mots dans un tableau. J'ai 5 listes : mots clé, séparateurs, identificateurs, opérateurs, constantes. Je voudrais, qu'à chaque fois qu'il trouve un mot, il le cherche dans les 5 listes et il me donne le mot avec le nom de la liste et son indice dans la liste.
Par exemple
public static ( ) public + 1111
mot clé (0) public
mot clé (1) static
séparateur (0) (
separateur (1) )
mot clé (0) public
opérateur (0) +
constante (0) 1111
Pour l'indice ça dépend de comment j'ai rempli ma liste
J'ai essayé avec ça
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22 for(int i=0; i<tabmot.length;i++){ System.out.println(tabmot[i]); if((a1.contains(tabmot[i])) ){ System.out.println("mot clé " + i + " = " + a1.get(i)); } else if ((a2.contains(tabmot[i]))) System.out.println("separateurs " + i + " = " + a2.get(i)); else if ((a3.contains(tabmot[i]))) System.out.println("operateur " + i + " = " + a3.get(i)); else if ((a7.contains(tabmot[i]))) System.out.println("identificateurs " + i + " = " + a5.get(i)); else if ((a5.contains(tabmot[i]))) System.out.println("constantes " + i + " = " + a7.get(i)); }
Partager