powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Разбор формул, нужен совет.
7 сообщений из 7, страница 1 из 1
Разбор формул, нужен совет.
    #35766790
Фотография Quasar
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Есть формулы типа ($a + $b) * $c
у каждого параметра ($a $b $c) есть сво-ва, такие как его код, значение и тд.
Мне надо делать быстрый разбор этой формулы и подставлять в нее значения параметров, получая например так: (3 + 4) * 8, где $a=3, $b=4, $c=8
Потом я выражение (3 + 4) * 8 вычисляю методом eval компонента скрипт контрол.
...
Рейтинг: 0 / 0
Разбор формул, нужен совет.
    #35767265
Фотография Quasar
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Мне надо:
1. Выбрать быстро из строковой формулы ($a + $b) * $c — параметры: $a, $b, $c.
2. Потом из БД получить значения для $a, $b, $c
3. Собрать формулу обратно, только уже без $a, $b, $c, вместо них числовые значения, т.е. (3 + 4) * 8.
4. Далее все просто — переадать (3 + 4) * 8 методу Eval()

Интересует как быстро реализовать пункт 1 и 3
ЗЫ: имена параметров могут состоять из более чем одной буквы, т.е. типа $monthSum, $calcRur и тд.
...
Рейтинг: 0 / 0
Разбор формул, нужен совет.
    #35767345
AndrF
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Quasar
ЗЫ: имена параметров могут состоять из более чем одной буквы, т.е. типа $monthSum, $calcRur и тд.

А может имена переменных сделать как в VB и использовать MS ScriptControl? Тогда все будет до смешного просто и ничего разбирать не надо...
...
Рейтинг: 0 / 0
Разбор формул, нужен совет.
    #35767746
Фотография Quasar
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Можно подробней, не понял :(
...
Рейтинг: 0 / 0
Разбор формул, нужен совет.
    #35768274
Фотография Antonariy
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: plaintext
1.
2.
3.
4.
Set sc = CreateObject("MSScriptControl.ScriptControl")
sc.Language ="vbscript"
fn = replace("($a + $b) * $c", "$", "")
sc.AddCode "a = 3" & vbcrlf & "b = 4" & vbcrlf  & "с = 8" 
debug.print sc.Eval(fn)
...
Рейтинг: 0 / 0
Разбор формул, нужен совет.
    #35768495
AndrF
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Antonariydebug.print sc.Eval(fn)[/src]

Угу. Причем можно работать задавая целые модули. В общем возможности там совсем не маленькие.
...
Рейтинг: 0 / 0
Разбор формул, нужен совет.
    #35768557
Фотография Quasar
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Спасибо за идею, буду пробовать!
...
Рейтинг: 0 / 0
7 сообщений из 7, страница 1 из 1
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Разбор формул, нужен совет.
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]