2011-07-07 11 views
9

Czy istnieje metoda, która pozwala mi ocenić wyrażenie matematyczne w ciągu znaków? Przykład (nie rzeczywisty kod):VB.Net - ocena wyrażenia matematycznego w łańcuchu

wejściowy = "2 + 2"

Wyjście = SomeMethod (Input)

Wyjście = 4

Aktualizacja: Nevermind, znalazłem sposób wokół niego przez przy użyciu DataTable.Compute.

+0

Szukaj więc dla MSScriptControl. – dbasnett

+1

Możliwy duplikat [Doing math w vb.net jak Eval w javascript] (http://stackoverflow.com/questions/1452282/doing-math-in-vb-net- like-eval-in-javascript) – KyleMit

Odpowiedz

3

Potrzebujesz parsera wyrażeń matematycznych, aby sobie z tym poradzić.

Oto różne opcje open source na CodePlex:

Przeszukanie znajdą wiele innych ...

+0

Dzięki za wejście, ale czy są jakieś biblioteki w .Net, które mogą to zrobić? Wolałbym nie używać zewnętrznego parsera ... Nie potrzebuję niczego skomplikowanego, o ile można dodawać, odejmować, mnożyć i dzielić. – Walker

+0

@ Leonardo: Nie bezpośrednio. Możesz użyć CodeDom, by sam to wygenerować, ale to sporo pracy ... –

+0

Hmmm Myślę, że użyję zamiast tego CodeDom, dziękuję za pomoc – Walker

Powiązane problemy