Сжатие строк

Дана строка:

 const str = AVVVBBBVVXDHJFFFFDDDDDDHAAAAJJJDDSLSSSDDDD

Необходимо реализовать функцию, принимающую в аргументах строку, состоящую из букв и вернуть новую строку, в которой повторяющиеся буквы заменены количеством повторений.

Примеры:

rle('AVVVBBBVVXDHJFFFFDDDDDDHAAAAJJJDDSLSSSDDDD'); // => 'AV3B3V2XDHJF4D6HA4J3D2SLS3D4';
rle('AVBVVXDHJFFDDDDDDHAAAAJJJDDSLSSSD'); // => 'AV1B1V2XDHJF2D6HA4J3D2SLS3D1';
rle('AVBV'); // => 'AVBV';
rle('AVBVV'); // => 'AVBV2';