Member 14145167 Ответов: 2

Как создать функцию разбора умножения чисел


Я попытался создать функцию разбора математического умножения чисел например
2*8 разбор до 16, с регулярным выражением и regex.replace

моя проблема заключается в том, что при замене он не заменяется строкой шаблона

Что я уже пробовал:

Match match = Regex.Match(Equation, @"^(\d+\.?\d*)\*(\d+\.?\d*)");
           if (checkNULL(match) == false)
               match = Regex.Match(Equation, @"(\d+\.?\d*)\*(\d+\.?\d*)");
           double a = double.Parse(match.Groups[1].Value.ToString());
           double b = double.Parse(match.Groups[2].Value.ToString());
           Equation = Regex.Replace(Equation, $@"{match}", (a * b).ToString());

Member 14145167

когда я вставляю @"(выражение\D+\.?\д*)\*(\д+\.?\Д*)" в regex.Заменить функция работает
но это не то, чего я хочу.

Patrice T

Показать пример ввода с фактическим выходом и ожидаемым.

BillWoodruff

Всегда ли ваша входная строка так же проста, как "(2*8)"?

2 Ответов

Рейтинг:
0

Mike Hankey

Ваше уравнение не содержит строки @"{match}", поэтому замена не выполняется.


Рейтинг:
0

Mike Hankey

Ваше уравнение не содержит строки "{match}", поэтому замена не выполняется.