Regex 自由代码营中间算法脚本:Pig拉丁正则表达式解决方案

Regex 自由代码营中间算法脚本:Pig拉丁正则表达式解决方案,regex,Regex,我找到了这个非常优雅的猪拉丁语转换解决方案,但我似乎无法找出它的正则表达式。替换上的“$&way”或“$2$1ay”。有人能解释一下吗 function translatePigLatin(str) { return str .replace(/^[aeiou]\w*/, "$&way") .replace(/(^[^aeiou]+)(\w*)/, "$2$1ay"); } // test here translatePi

我找到了这个非常优雅的猪拉丁语转换解决方案,但我似乎无法找出它的正则表达式。替换上的“$&way”或“$2$1ay”。有人能解释一下吗

  function translatePigLatin(str) {
  return str
    .replace(/^[aeiou]\w*/, "$&way")
    .replace(/(^[^aeiou]+)(\w*)/, "$2$1ay");
}

// test here
translatePigLatin("consonant");
似乎是“”中的“解决方案4”。这一页准确地解释了它的功能

我想问题是关于
$&
$2

  • $&
    是正则表达式匹配的整个字符串
  • $1
    是第一对括号中的部分
  • $2
    第二个括号
  • 等等

参见此处示例:

无法理解问题所在我仍然对这个解决方案感到困惑