問題の背景 - ユーザーが「x の n 乗根」のような式を入力できる数値の n 乗根を取得したい.適切な期待される出力を返す関数 nthroot(x,n) を作成しました.私の問題は抽出することです式からの x と n の値。
一致したパターンを抽出し、それを配列に保存してさらに処理したいので、次のステップで配列から2つの要素をポップし、結果を抑圧で置き換えます.しかし、使用せずにすべての値を配列に取得することはできませんループ。
私のコードに相当する 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 が必要です。
また
以下のような任意の1行表現。
expr = expr.replace(/the\s?([+-]\d+)th\s?root\s?of([+-]\d+)/g,nthroot(\\$2,\\$1));
同じことを手伝ってください。