Xavier Junqué i de Fortuny
26.04.2022, 09:14 Uhr
Math Parser und Evaluator in VB.NET
Einen Parser zu schreiben, der aus einem String mit einem Term ein Ergebnis berechnet ist kniffliger als man glaubt. Entwickler Xavier Junqué i de Fortuny hat einen Parser entwickelt, der auch komplexe Zahlen berücksicht und zudem den Einsatz von Variablen erlaubt.
Der Code des spanischen Entwickers besteht aus fünf Klassen, die eine Zeichenkette eines reellen oder komplexen mathematischen Ausdrucks auswerten und den Ausdruck auf eine reelle oder komplexe Zahl zu reduzieren. Der mathematische Ausdruck darf dabei auch Variablen enthalten. Geschrieben ist der Code in Visual Basic .NET. Den Source-Code sowie zwei Demo-Anwendungen stehen auf dieser CodeProject-Seite zum Download bereit.
In vielen Situationen gibt es eine Zeichenkette, die einen mathematischen Ausdruck enthält, zum Beispiel "1+2*5" oder "(3+i)(3-i)" und es besteht die Notwendigkeit, die Berechnung durchzuführen und das Ergebnis zu ermitteln. Bei einer Formel wie "0,5*x+4" gilt es das Ergebnis für verschiedene Werte von x zu berechnen. In solchen Situationen kann der komplexe Parser von Xavier Junqué i de Fortuny helfen. Eines der Ziele war es, dass die Klassen seines Parsers auf keine externen Klassen angewiesen sind.