0

ユーザーがデータベースに格納されるエンティティを作成できるアプリケーションがあります。各エンティティには、文字列の Name プロパティとブール値の Value プロパティがあります。ユーザーは、エンティティに対して実行されるロジックを含む文字列を指定することもできます。たとえば、ロジックは次のようになります。

(Q1 または Q2) および (Q3 または Q4)

したがって、このロジックを評価するには、アプリで Name プロパティが Q1、Q2、Q3、および Q4 であるエンティティを探し、上記の式の名前を Value プロパティに置き換えて、式を評価する必要があります。

アプリは C# で記述されています。私は C# と VB の専門家ですが、動的言語の経験はありません。正規表現を使用して論理文字列をトークン化するパーサーを作成することもできますが、比較的新しい .Net 動的言語機能の何かを使用して、これを行う簡単な方法があるかどうか疑問に思っています。

ボブ

4

2 に答える 2

1

Flee (http://flee.codeplex.com/) が勝者のようです。特に、Flee が式から解析する変数の値をアプリが提供できるようにする簡単なイベント メカニズムを提供しているようです。

于 2012-11-25T21:07:23.993 に答える
0

ANTLR は素晴らしい Java パーサー ジェネレーターです。見てみることをお勧めします:

http://www.antlr.org/wiki/display/ANTLR3/Antlr+3+CSharp+Target

于 2012-11-25T20:48:56.883 に答える