演算子のオペランドにブラケットを追加しようとしていますOR
。たとえば、次のようなステートメントがある場合、
C>O AND C>4 OR C>0 AND C>5
以下のようにフォーマットしたいと思います
(C>O AND C>4) OR (C>0 AND C>5)
以下のようにこれを行うための簡単なコードを書きました。ただし、文字列に複数のOR
ステートメントがある場合、コードは正しく機能しません。正規表現でこれを達成できると言われました。しかし、正規表現に関する知識はほとんどありません。
string mystring = "C>O AND C>4 OR C>0 AND C>5";
int indexFound = mystring.IndexOf("OR");
string left = mystring.Substring(0, indexFound - 1);
string right = mystring.Substring(indexFound + 2, mystring.Length - (indexFound + 2));
string output = "(" + left + ")" + "OR" + "(" + right + ")";
どんな助けでも大歓迎です。