NSString zu Gleichung

8

Ich verwende Objective-C und ich versuche eine Gleichung festzulegen, die in einem NSString gespeichert wird, um ausgewertet und in einem NSInteger gespeichert zu werden.

Ähnliches wie folgt:

%Vor%

und dann auswerten, um 31 zu werden und es in NSInteger zu speichern. irgendwelche Ideen wie man das macht?

    
Sj. 01.10.2009, 04:52
quelle

3 Antworten

22

Sie wollen den wunderbaren, erstaunlichen und fabelhaften GCMathParser, den Sie (kostenlos) auf apptree.net finden: Ссылка genau das, was Sie fragen, und erlaubt Ihnen sogar, variable Substitutionen zu machen (3x + 42, evaluieren mit x = 7). Es hat sogar Unterstützung für mathematische Funktionen wie sin (), cos (), tan (), ihre Inversen, dtor (), log (), ....

Bearbeiten viel später ...

Obwohl GCMathParser ziemlich großartig ist, hat es den Fehler, nicht erweiterbar zu sein. Wenn Sie also eine Funktion benötigen, die sie nicht nativ unterstützt, dann ist es schade. Also entschloss ich mich, etwas dagegen zu unternehmen und kam mit einem völlig nativen mathematischen Parser und Evaluator auf: Ссылка

    
Dave DeLong 01.10.2009, 04:57
quelle
19

Sie können das Vergleichssystem verwenden:

%Vor%     
newacct 01.10.2009 08:04
quelle
7

Ich benutze dies auf dem iPhone, um eine Gleichung auszuwerten. Es ist einfacher, Sie müssen kein NSPredicate erstellen, nur die NSExpression:

%Vor%

Und hier ist die Dokumentation zu den kompatiblen analysierbaren Funktionen: " BNF Definition von Kakao Prädikaten "

Code geteilt in Gist hier

    
luismesas 14.04.2012 14:33
quelle

Tags und Links