Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

507
Views
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

about 4 years ago · Juan Pablo Isaza
3 answers
Answer question

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'));

about 4 years ago · Juan Pablo Isaza Report

0

coolString = `Cookke`;

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

dashed(coolString);

about 4 years ago · Juan Pablo Isaza Report

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))

about 4 years ago · Juan Pablo Isaza Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!