问题背景——我想获得数字的第 n 个根,用户可以在其中输入表达式,如“x 的第 n 个根”。我编写了一个函数 nthroot(x,n),它返回正确的预期输出。我的问题是提取x 和 n 的值来自表达式。
我想提取一些匹配的模式并将其存储到一个数组中以供进一步处理,以便在下一步中我将从数组中弹出两个元素并将结果替换为压制。但是我无法在不使用的情况下将所有值放入数组中环形。
我的代码的 perl 等效项如下所示。
$str = "the 2th root of 4+678+the 4th root of -10000x90";
@arr = $str =~ /the ([-+]?\d+)th\s?root\s?of\s?([-+]?\d+)/g;
print "@arr";
我想要上面代码的javascript等价物。
或者
如下所示的任何一行表达式。
expr = expr.replace(/the\s?([+-]\d+)th\s?root\s?of([+-]\d+)/g,nthroot(\\$2,\\$1));
请帮助我。