6*x + 7 = 7*x + 2 - 3*x
右辺を方程式の左に移動すると、演算子記号を+から - へ、またはその逆に反転する必要があります。Javaでregexを使って+と - を切り替えることはできますか?
java regex replaceAll
を使用すると、すべての+を-'に置き換えることができます。その結果、すべての演算子の標識はすべての+を復元することが不可能になります。
回避策として、私は文字列を繰り返して、+と - に出会ったときに+に変更します。しかし、私はまだJavaで正規表現を使用してブール値のペアを切り替える方法があるのだろうか?
String equation = "<Your equation>"
equation = equation.replaceAll("+","$$$");
equation = equation.replaceAll("-","+");
equation = equation.replaceAll("$$$","-");
と仮定すると、$$$はあなたの方程式ではありません。
あなたは本当に正規表現で数式に取り組むべきではありません。トークナイザを使用し、トークンを操作します。 –
文字列から構文木を生成し、その木を操作して文字列に戻します。はるかに少ない手間とはるかに少ないエラーが発生しやすい。 – Cubic