Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Java [игнор отключен] [закрыт для гостей] / RegExp для формулы / 16 сообщений из 16, страница 1 из 1
20.11.2006, 18:36:22
    #34141896
AlexeyShponarsky
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
RegExp для формулы
RegExp для формулы не могу нигде найти, может кто сталкивался?
...
Рейтинг: 0 / 0
20.11.2006, 18:59:15
    #34141938
Timm
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
RegExp для формулы
Формула! Где формула? (ц) реклама.
...
Рейтинг: 0 / 0
20.11.2006, 19:32:39
    #34141976
AlexeyShponarsky
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
RegExp для формулы
Спасибо за содержательный ответ :)
...
Рейтинг: 0 / 0
20.11.2006, 21:59:51
    #34142177
AQ
AQ
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
RegExp для формулы
AlexeyShponarskyСпасибо за содержательный ответ :)вам тоже за содержательный вопрос
...
Рейтинг: 0 / 0
20.11.2006, 22:13:35
    #34142192
mayton
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
RegExp для формулы
Леша, чтобы написать Regexp нужно хоть как-то (словами, примерами) описать все-все-все возможные варианты записи формул. Я надеюсь вы понимаете, что в математике нету ограничения на сложность и многообразие форм записи формул?

Приведите хотя-бы образец ВАШЕЙ формулы.
...
Рейтинг: 0 / 0
20.11.2006, 22:26:58
    #34142209
Leonidv
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
RegExp для формулы
Описать все-все множество как раз очень удобно с помощью регулярного выражения :)
...
Рейтинг: 0 / 0
21.11.2006, 00:49:05
    #34142296
AciD_v
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
RegExp для формулы
LeonidvОписать все-все множество как раз очень удобно с помощью регулярного выражения :)
Так разве что:
Код: plaintext
(.)*
:)

Leonidv, прошу варианты в студию!
...
Рейтинг: 0 / 0
21.11.2006, 10:32:28
    #34142751
Timm
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
RegExp для формулы
LeonidvОписать все-все множество как раз очень удобно с помощью регулярного выражения :)
Да, но не для всех множеств можно нарисовать регулярное выражение (AFAIR).
...
Рейтинг: 0 / 0
21.11.2006, 16:24:16
    #34144347
AlexeyShponarsky
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
RegExp для формулы
Извините пожалуйста за не коректно поставленый вопрос :)
примерно должно быть такое:
(переменная1)+или-или*или/(переменная2).....+или-или*или/(переменнаяN) =результат_в_виде_переменной

так ясно примерно хоть?
...
Рейтинг: 0 / 0
21.11.2006, 16:40:52
    #34144407
Йогурт
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
RegExp для формулы
а вам за для чего?
Если надо по введенной формуле значения вычислять - ту тут-таки, как обычно, все уже украдено до нас. Jep например.
...
Рейтинг: 0 / 0
21.11.2006, 16:43:46
    #34144425
Йогурт
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
RegExp для формулы
да, и разбирать формулы regexp'ом - занятие неблагодарное, слишком много вариантов
тут, поскольку некий "словарь" налицо, надо смотреть в сторону нелюбимого мной паттерна "интерпретатор"
...
Рейтинг: 0 / 0
21.11.2006, 16:43:46
    #34144426
fjord
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
RegExp для формулы
AlexeyShponarskyИзвините пожалуйста за не коректно поставленый вопрос :)
примерно должно быть такое:
(переменная1)+или-или*или/(переменная2).....+или-или*или/(переменнаяN) =результат_в_виде_переменной

так ясно примерно хоть?то есть вам дана строка с уравнением типа "x+y" и вам требуется подставить вместо переменных циферки и получить ответ?
...
Рейтинг: 0 / 0
21.11.2006, 16:44:21
    #34144431
AlexeyShponarsky
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
RegExp для формулы
Нет мне валидацию нужно провести.
...
Рейтинг: 0 / 0
21.11.2006, 16:47:44
    #34144448
Йогурт
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
RegExp для формулы
AlexeyShponarskyНет мне валидацию нужно провести.

ну валидить это просто
1) взять Jep =) (самый лучший вариант)
или
2) составить набор простых правил (типа два мат.знака не могут идти подряд, кол-во открытых скобок должно быть равно кол-ву закрытых, и т.д.) и прогнать через них строку с формулой
...
Рейтинг: 0 / 0
21.11.2006, 16:55:15
    #34144484
AlexeyShponarsky
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
RegExp для формулы
Ну мат знаки одно, а вот переменные не должны начинаться с числа, должны чередоваться переменная, число, вообщем то не единое правило.
...
Рейтинг: 0 / 0
22.11.2006, 16:39:10
    #34147570
AlexeyShponarsky
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
RegExp для формулы
Вообщкм в итоге я написал такую функцию:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
function isFormula(full_formula){
   var res = true;
   var regex =  new  RegExp("[a-zA-Z_][a-zA-Z_0-9]*");
   var var_f =  new  Array();
   var_f = full_formula.split("=");
    if (!(var_f[ 0 ] ==  null  || var_f[ 1 ] ==  null )){
    var_f[ 0 ].replace(" ","");
    var_f[ 1 ].replace(" ","");
     var formula = var_f[ 0 ];
     var result = var_f[ 1 ];
     var vars =  new  Array()
     vars = formula.split( new  RegExp("[\+\/\*\-]"));
      for (var i =  0 ; i < vars.length; i++){
         if (!regex.test(vars[i]))
            res=false;
       }
     if (!regex.test(result))
    res=false;
    } else {
    res = false;
    }
     return  res;
}
...
Рейтинг: 0 / 0
Форумы / Java [игнор отключен] [закрыт для гостей] / RegExp для формулы / 16 сообщений из 16, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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