Итак, у меня есть создатель математического алгоритма, в который пользователь вставляет переменные из списка возможных переменных, и он может создать алгоритм с использованием только тех переменных, а также чисел и символов, используемых в математике, таких как скобки и другие.
Мне нужно регулярное выражение, которое удалит из строки все, что не является ни одной из этих переменных или (). * - + / или число.
Я перепробовал много регулярных выражений, но ни один не сделал то, что мне нужно
все переменные должны быть заключены в фигурные скобки.
Например
/^(?!{profitPercent}|{productPrice}|{weight}|{quantityInCart}|{lineTotal}|{cartTotal}|{billingUnits}|{test_111}|{test_213}|{test_prod_input_15}|{test_prod_input_16}).*/g
Это просто удаляет все и не имеет исключений для чисел и (). * - + /
Скажите, у меня есть следующая строка:
var str='this is a string with a {productPrice} variable and some 827/100 math in it';
Мне нужно удалить все, кроме
{productPrice}827/100
Это мой код:
var reg=new RegExp("^(?!{" + escapeString(variableNames.join("}|{")) + "}).*","g");
txt=txt.replace(reg,'');
Я пробовал много разных выражений, ни одно из них не сработало.