JSFiddle - React, Tailwind, and code Playground
HTML
<ul>
<li>Element 1</li>
<li>Element 2</li>
<li>Element 3</li>
<li>Element 4</li>
<li>Element 5 question more</li>
<li>Element 6</li>
<li>Element 7</li>
<li>at fugit neque magnam</li>
<li>Element 9</li>
<li>Element 10</li>
<li>Element 11</li>
<li>Element 12</li>
<li>Element 13 question more</li>
<li>Element 14</li>
<li>Element 15</li>
<li>Element 16</li>
<li>Element 17</li>
<li>Element 18</li>
<li>Element 19 question more</li>
<li>Element 20</li>
<li>Element 21 question more</li>
<li>Element 22</li>
<li>Element 23</li>
<li>Element 24</li>
</ul>
JavaScript
var elements = document.getElementsByTagName('li');
for(var i = elements.length; i; i--){
if(i % 4 == 3) elements[i].parentNode.removeChild(elements[i - 1]);
if(elements[i].textContent.match( /question more/gi) == "question more"){
elements[i].textContent.replace(/question more/g, "<a href=\"http://example.com\">It's</a> question more" );
}
}