Всем привет. Стоит такая задача:
Первый пункт я реализовал так :
let text = 'маааааааааамммммммааааа ммммммммыыыыыыыыллллааа ррррааааааммммууууууу';
textSplit = text.split('');
arr = textSplit.filter((item,index) => item !== textSplit[index - 1]);
console.log(arr.join(''));
Получилось 'мама мыла раму'
Вопрос с реализацией второго пункта.
let text = 'маааааааааамммммммааааа ммммммммыыыыыыыыллллааа ррррааааааммммууууууу';
let result = '', lastChar = text[0], count = 0;
for (let chr of text) {
if (chr === lastChar) {
++count
} else {
result += lastChar + (count > 1 ? count : '')
count = 0
lastChar = chr
}
}
result += lastChar + (count > 1 ? count : '')
console.log(result);
Просто счетчик воткнуть)
const text = 'маааааааааамммммммааааа ммммммммыыыыыыыыллллааа ррррааааааммммууууууу';
let counter = 0;
let result = [...text].reduce((acc, char, i, arr) => {
if (char === arr[++i]) {
counter++;
} else {
acc += char += counter ? counter : "";
counter = 0;
}
return acc;
},"")
console.log(result)
let text = 'маааааааааамммммммааааа ммммммммыыыыыыыыллллааа ррррааааааммммууууууу';
let clearText = numberText = text;
// Конструкция [...text] преобразует строку в массив
// Конструкция [...new Set(arr)] делает массив arr отфильтрованный
// только уникальными значениями
[...new Set([...text])].forEach(char=> {
// TODO требуется проверка, что в char нет спец.символов RexExp.
// В рамках задачи не требуется, но в продакшн проверку стоит сделать
// Это может быть дырой в безопасности.
let rx = new RegExp(`[${char}]+`,'g');
// Метод replace() принимает первым параметром регулярку.
// Вторым параметром может быть строка, но в этом случае функция
// Функция возвращает первый символ найденной строки.
clearText = clearText.replace(rx, s => s[0]);
// А здесь функция к первому символу прибавляет длину строки
// (если она требуется).
numberText = numberText.replace(rx, s => s[0] + (s.length > 1 ? s.length-1 : ''));
});
console.log(clearText);
console.log(numberText);
Решил сделать по гайдам простой калькулятор, но в место результата получаю NaN
Подскажите, пожалуйста, почему findLastVisibleItemPosition() возвращает -1
Стоит задача: прокликать меню и подгруппыС подгруппами проблем нет, есть проблема с основным меню, второй пункт меню мой тест почему-то пропускает...
Можно как-то удалить поступивший ответ от бота на команду ? (Человек пишет команду , бот отвечает и через какое-то время ответ бота удаляется)