Salut,
j'ai fait un interpréteur de formules mathématiques en ActionScript, le langage de flash (basé sur l'ECMA script, donc ressemblant au javascript, normalement assez compréhensible pour un développeur java)
url :
http://tom.rethaller.free.fr/proje [...] terpreter/
en gros, j'ai appliqué un algo de conversion de chaîne en notation polonaise inversée (RPN en english) (( exemple de RPN :
((a+b)*c)/2 => a b + c * 2 /
ça permet de se passer des parenthèses, en respectant les priorités (ici ça se traduit par "je prends a, je prends b, j'applique une addition entre les 2, puis, je prends le resultat, je prends c, j'applique une opération de multiplication entre les 2, puis.." etc... )))
je sais pas si c'est faisable facilement avec des regexp mais ça je connais pas du tout (bonne résolution 2005 => apprendre les regexp)
mais en tous cas avec la RPN c'est pas si sorcier que ça.
en gros, ça marche à base de piles, dès que je suis chez moi, j'essaye de retrouver tous ces liens sur la conversion, parce que l'algo est compréhensible mais quand même pas facile à trouver comme ça