Как я могу преобразовать операнд WITH "String-Calculation-Row" в double? - PullRequest
2 голосов
/ 14 марта 2011

Может кто-нибудь помочь мне, пожалуйста, с помощью преобразования строк? Например, эта строка является строкой, которую я хочу преобразовать:

(Это от пользователя через текстовое поле :) NSString * testString = @ "3 + 4 * 5,2 - 6";

И мой путь на данный момент таков, но операнды меняются ...: double temp = число1 + число2 * число3 - число4;

Результат должен быть двойным, и операнды должны быть распознаны. Числа не проблема вообще, но операнды. Операнд, такой как "*" или "/", не может преобразовать в double с doubleValue Есть ли возможность сделать это из строки?

Заранее спасибо! : -)

Ответы [ 2 ]

3 голосов
/ 14 марта 2011

Попробуйте отсканировать такие строки с помощью NSScanner.

КСТАТИ «+», «-» называются операциями, а не операндами.В вашем случае операндами являются «3», «4» и т. Д.

ОБНОВЛЕНИЕ

Похоже, Дейв Делонг (https://stackoverflow.com/users/115730/dave-delong) уже решил вашу проблему сDDMathParser - https://github.com/davedelong/DDMathParser

0 голосов
/ 14 марта 2011

Кстати, вы ищете "оценку". Преобразование строк - это нечто другое.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...