Я хочу написать функцию, которая будет принимать слово, а затем возвращать измененное слово, где каждый кластер из двух согласных имеет тире между ними.
Например:
function('Internationalization')
=> 'In-ter-nationalization'
Это то, что я получил до сих пор:
function insertDash(word) {
const pattern = /[^a|e|i|o|u]{2}/gim;
const splitWord = word.split(pattern);
const dashedConsonant = word.match(pattern);
const fullWord =[];
let count = 0;
for (var i = 0; i < dashedConsonant.length; i++) {
fullWord.push(splitWord[count]);
fullWord.push(`${dashedConsonant[count][0]}-${dashedConsonant[count][1]}`);
count += 1;
}
fullWord.push(splitWord.slice(-1));
return fullWord.join('');
}
Однако мой шаблон REGEX не может вместить пробелы.Я получаю:
function('Le Wagon')
=> 'Le -Wagon'
Когда я действительно хочу:
function('Le Wagon')
=> 'Le Wagon'
Буду очень признателен за любые советы, рефакторинги или советы.