我正在研究一种算法,该算法接受一个字符串进行输入并反转字符串的元音。 STR ='你好'应该回归' holle' STR =' wookiE'应该返回' wEikoo'
我想知道的是你能使用str.replace吗?
function reverseVowels(str){
return str.replace(/[aeiou]/-g,/[aeiou]+1/);
}
我不确定替换函数的第二个参数是什么。我在想的是找到第一个元音,然后转到下一个元音替换它。这可以通过这种方法完成,还是需要forEach / for循环?
答案 0 :(得分:8)
您可以分两个阶段完成此操作:
代码:
function reverseVowels(str){
var vowels = str.match(/[aeiou]/g);
return str.replace(/[aeiou]/g, () => vowels.pop());
}
// example
var original = 'James Bond';
var result = reverseVowels(original);
// output for snippet
console.log(original + ' => ' + result);