Библиотека Java для синтаксического анализа логического выражения - PullRequest
0 голосов
/ 07 декабря 2011

У меня есть строка типа «А И В И С И (D ИЛИ E)». Я просто хочу разобрать логическое выражение здесь, есть ли Java Api для того же.

Здесь A, B, C ... имеют вид строки, строки, строки (т. Е. Ключ, значение, оператор)

Ответы [ 2 ]

1 голос
/ 07 декабря 2011

Сначала вам нужно будет исправить грамматику выражения, которое вы собираетесь принять. Что вы написали:

«А И Б ИЛИ С И (D ИЛИ E)»

- пример строки вашего языка. Итак, сначала вам нужно определить ваш язык, который можно определить с помощью BNF . Это даст вам полное понимание вашего собственного языка.

И затем любое входное выражение, которое вы вводите, необходимо проанализировать. Вы можете создать дерево выражений

И, наконец, вам нужно оценить дерево выражений.

Разумный пример того, как это можно сделать, приведен в этой статье

0 голосов
/ 20 декабря 2014

Использовать Spring Expression - поддерживает И ИЛИ НЕ

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