vadimushka_d
@vadimushka_d
Учусь на программиста

Как сделать проверку регуляркой для проверки введённого арифметического выражения?

Всем привет, вообщем у меня такая проблема, как мне проверить введенное выражение на корректный ввод, допустим user ввёл в командную строку такое выражение:
5/7 + 4 - 5{5/8} / 5/8 * 8 + -6
Вот мне надо проверить это выражениетна корректность, то есть я для одной дроби составил выражение:

String regexp = "(\\-)?\\d+((\\/\\d+)|(\\{\\d+\\/\\d+\\}))?";

То есть учел только одну дробь, но теперь мне надо проверить на корректность всего выражения, учитывая знаки арифметических операций
Кому интересно - тут есть код на Java, где это написано.. https://bitbucket.org/13oit18k/rational/src/96a724...
  • Вопрос задан
  • 686 просмотров
Пригласить эксперта
Ответы на вопрос 1
@syrov
пишу программы до 99 строк
Регулярное выражение, это по сути конечный автомат, он не может распарсить такую строку, так как у нее есть подсчет {} кавычек. Это уже контекстно свободная грамматика.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы