• Jobs
  • Bootcamp
  • About Us
  • For professionals
    • Home
    • Jobs
    • Courses and challenges
    • Questions
    • Teachers
    • Bootcamp
  • For business
    • Home
    • Our process
    • Pricing
    • Assessments
    • Payroll
    • Blog
    • Sales
    • Salary Calculator

0

92
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

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

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

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

7 months 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 job Pricing Our process Sales
Legal
Terms and conditions Privacy policy
© 2023 PeakU Inc. All Rights Reserved.