JSFiddle - React, Tailwind, and code Playground

HTML

<body>
    <p>Напишите код, который реализует следующую логику. Имеется произвольное число списков ul с произвольным числом элементов внутри. У каждого элемента может быть разное содержание. Необходимо удалить элементы, порядковый номер которых делится на 4 с остатком
        3, если внутри элемента нет текста, включающего подстроку "question more". При этом подстроку "question more", найденную в любых элементах, необходимо заменить на "RT question more" со ссылкой на "https://www.rt.com".</p>
</body>
<button onclick="mutation()">редактировать списки</button>

JavaScript

let x = Math.round(Math.random() * 10) + 2,
    y,
    div = document.createElement('div'),
    ul, li;
for (var i = 0; i < x; i++) {
    y = Math.round(Math.random() * 10) + 5;
    ul = document.createElement('ol');
    for (var j = 0; j < y; j++) {
        li = document.createElement('li');
        Math.round(Math.random()) ? li.innerHTML = 'содержимое' : li.innerHTML = 'why the question more serious';
        ul.appendChild(li);
    }
    div.appendChild(ul)
}
document.body.appendChild(div); // создадим 2-12 списков к каждом из которых 5-15 элементов.
function mutation() {
    let elements = document.querySelectorAll('ol');
    let str;
    elements.forEach(function(itemUl) {
        itemUl.querySelectorAll('li').forEach(function(item, i) {
            str = item.innerHTML;
            num = str.indexOf('question more');
            if (~num) item.innerHTML = `${str.slice(0,num)}<a href="https://www.rt.com">RT question more</a> ${str.slice(num + 13)}`

            if (i % 4 == 3 && !~num) item.remove();

        });
    });
};