3

括弧または式の削減と最適化を行う.NET用のライブラリはありますか?(A&(((B)|(C))| D)))のような式を取り、

A&(B | C | D)

しかし、(A&A)を取り、Aを返します

4

2 に答える 2

2

これは、スタンドアロンのパーサー/字句アナライザーの領域にあります。しかし、ANTLRには、目的に合っている場合は、かなり優れたC#バインディングがあります。

この種の文字列用の単純なパーサーを作成して、自分で削減を行うのは、おそらくそれほど手間がかかりません。

于 2010-04-03T03:11:50.777 に答える
0

私はLINQの専門家ではありませんが、手を汚したい場合は、そのようなタスクのデータ構造が.Net式ツリーにすでに存在します。

http://msdn.microsoft.com/en-us/library/bb397951.aspx

ただし、ツリーを作成するには、文字列を解析する必要があります。

于 2010-04-03T04:27:23.330 に答える