Interpreter un string

fatmaboule Messages postés 9 Date d'inscription jeudi 25 novembre 2004 Statut Membre Dernière intervention 13 mars 2018 - 11 mars 2008 à 00:18
NHenry Messages postés 15113 Date d'inscription vendredi 14 mars 2003 Statut Modérateur Dernière intervention 22 avril 2024 - 11 mars 2008 à 08:47
hello a tous,

j'ai un probleme que je ne vois pas trop comment resoudre:

j'ai d'un coté une regle definie dans un string   exemple: "(A / B ) + C"

cette regle peut bien sur beaucoup plus complexe (plusieurs parentheses, negation etc...)

et d'un autre coté les arguments a verifier avec la regle:

exemple: si les arguments c'est A et C et bien la regle est vrai, par contre si les arguments c'est A et B la regle est fausse

mon  idée etait la suivante:  si mes arguments apparaissent dans la regle alors je remplace l'argument par TRUE sinon je le remplace par FALSE

je m'explique : si mes arguments sont A et C, la regle (A / B ) + C donnera: (TRUE / FALSE ) + TRUE

ensuite je remplace les  "/" par  OR, les - par NOT et les + par AND

ce qui en definit donnerait la regle suivante: (TRUE OR FALSE) AND TRUE

le resultat est TRUE et donc la  regle est verifiée  contrairement a la variante A et B => (TRUE OR TRUE) AND FALSE = FALSE

tout ca est bien beau dans la theorie !

en pratique je bloque sur un truc: comment faire comprendre a VB d'interpreter un string du genre (TRUE OR FALSE ) AND TRUE afin que VB me donne en reponse soit TRUE soit FALSE.

voila voila

merci par avance

1 réponse

NHenry Messages postés 15113 Date d'inscription vendredi 14 mars 2003 Statut Modérateur Dernière intervention 22 avril 2024 159
11 mars 2008 à 08:47
Bonjour

Il est plus commun de voir la règle suivante :
+ OU
. ET
* ET

Tu peux aller voie mon CalcBool sur mon site (sources dispo), c'est du .NET1, mais ça reste simple.

Dans Word, j'Excel. (juste pour la citation)
VB (6, .NET1&2), C++, C#.Net1
Mon site
0
Rejoignez-nous