Intermediate Algorithm Scripting - Pig Latin

Tell us what’s happening:
Can someone help me with this qn? My code works for all test cases except for ‘glove’, ‘rhythm’, and ‘schwartz’ and i have no idea why.

Your code so far

function translatePigLatin(str) {
  let vowelReg = /^[aeiou]/;
  if (str.match(vowelReg)){
    return str+'way';
  }
  
  let consReg = /^[^aeiou]+/;
  let matched = str.match(consReg);
  console.log(str.slice(matched.length) + matched + 'ay')
  return str.slice(matched.length) + matched + 'ay';
}

translatePigLatin("paragraphs");

Your browser information:

User Agent is: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/110.0.0.0 Safari/537.36

Challenge: Intermediate Algorithm Scripting - Pig Latin

Link to the challenge:

Try adding console.log in more places, to check at each point, if each variable contains what you expect.

yup i alr did. what confuses me is that for glove, matched is being assigned ‘gl’ as it’s supposed to but the resulting string ends up being ‘loveglay’. When i check the length of matched for the ‘glove’ test case it also reads 1 for some reason

what’s worse is when i do

let news = str + matched + ‘ay’;
console.log(news.replace(matched,“”));

it does output ‘oveglay’ but the test on the left side of the screen says its wrong HAHAHA

it works when I just do str.replace() to replace the consonants with “” but does anyone know why my code doesn’t work cuz i really think it should

  1. There’s a syntax error in return str+ 'way; which is preventing the strings starting with a vowel from completing.

  2. Check the result for matched.length and you should be on the right track for the consonant tests.

This topic was automatically closed 182 days after the last reply. New replies are no longer allowed.