Может быть, вы можете использовать этот анализатор для инфиксных выражений.
http://planet.racket-lang.org/package-source/soegaard/infix.plt/1/0/planet-docs/manual/index.html
Вот небольшой пример (это занимает некоторое время для библиотеки для установки - это, кажется, старый Schematics набор тестов принимает навсегда установить в эти дни - мне нужно, чтобы перейти к встроено один).
#lang at-exp racket
(require (planet soegaard/infix)
(planet soegaard/infix/parser))
(display (format "1+2*3 is ~a\n" @${1+2*3}))
(parse-expression #'here (open-input-string "1+2*3"))
Выходной сигнал будет:
1+2*3 is 7
.#<syntax:6:21 (#%infix (+ 1 (* 2 3)))>
разбор выражение-функция анализирует выражение в строке, и возвращает синтаксический-объект, который напоминает выход ToExpression.
Пожалуйста, прочтите http://stackoverflow.com/help/how-to-ask – Renzo