Company logo
  • Empleos
  • Bootcamp
  • Acerca de nosotros
  • Para profesionales
    • Inicio
    • Empleos
    • Cursos y retos
    • Preguntas
    • Profesores
    • Bootcamp
  • Para empresas
    • Inicio
    • Nuestro proceso
    • Planes
    • Pruebas
    • Nómina
    • Blog
    • Comercial
    • Calculadora

0

86
Vistas
How do I create a function that takes a string and returns dashes on the left and right side of every vowel (a e i o u)

Examples dashed("Carpe Diem") ➞ "C-a-rp-e- D-i--e-m" dashed("Fight for your right to party!") ➞ "F-i-ght f-o-r y-o--u-r r-i-ght t-o- p-a-rty!" Notes

5 months ago · Juan Pablo Isaza
3 Respuestas
Responde la pregunta

0

There are already a couple of solutions using regex; therefore, I am adding an answer which can be useful to someone who is not familiar with regex.

The following function, referenced by formatVowels, iterates the parameter string and uses String#indexOf to check if any of the characters is a vowel; if yes, it prepends and appends - to it and then adds the resulting text to the variable, result, otherwise, adds the character as it is to the variable, result.

const formatVowels = (str) => {
  if (str == undefined) return "";
  let result = "";
  for (const ch of str) {
    result += "AEIOU".indexOf(ch.toUpperCase()) != -1 ? "-" + ch + "-" : ch;
  }
  return result;
};

// Test
console.log(formatVowels('Hello'));

5 months ago · Juan Pablo Isaza Denunciar

0

coolString = `Cookke`;

function dashed(coolString) {
  const regex = /a|e|i|o|u/gi;
  console.log(coolString.replace(regex, `-$&-`));
}

dashed(coolString);

5 months ago · Juan Pablo Isaza Denunciar

0

const my_replacer = (str)=> str.replace(/[aeiouAEIOU]/g,'-$&-')
let a = 'Carpe Diem'
console.log(my_replacer(a))
let b = 'Fight for your right to party!'
console.log(my_replacer(b))

5 months ago · Juan Pablo Isaza Denunciar
Responde la pregunta
Encuentra empleos remotos