Регулярное выражение поиска одинаковых букв в функции

Рейтинг: 0Ответов: 0Опубликовано: 19.06.2023

Функция по получению числа того, сколько разных букв повторяются в строке 2 или более раз. Она должна вернуть именно количество этих буквы в строке. Неважно повторилась буква 2 или 700 раз - я должен получить только один элемент в массив(так как мэтч дает массив), например слово 'aabbccde' - вернет массив из 3 элементов(там буква "а" повторяется, буква "b" повторяется и "с" повторяется), а слово invisibility (хоть там I повторяется 4 раза) - только 1 (т.е. не принципиально сколько раз повторилась буква, нужно вернуть что она повторилась(1),но он мне возвращает в слове invisibility 2 ( так как он видит сначала одну пару I,а потом вторую и возвращает обе). Вот пытаюсь понять, что поменять в регулярке чтобы вернул только 1 элемент в таком случае.

Вот тесты выглядят так

(duplicateCount(""), 0);
(duplicateCount("abcde"), 0);
(duplicateCount("aabbcde"), 2);
(duplicateCount("aabBcde"), 2);
(duplicateCount("Indivisibility"), 1)

А вот сама функция полностью

function duplicateCount(text){
 if (text === "") {
   return 0
 }
  let arr = text.toLowerCase().split('').sort().join('')
  let count = arr.match(/(\w)\1/g)
  console.log(count)
    if (count === null) {
    return 0
  }
  else {
    return count.length
  }
}

пысы. я знаю что задачу можно решить по другому, без регулярок, но я пытаюсь найти именно такой метод

Ответы

Ответов пока нет.