Вот код:
<div id="p1">
<p>текст 1</p>
<div class="s1">
<hr>
<p>текст 2</p>
</div>
</div>
<script>
txt = document.getElementById('p1').innerHTML;
txt = txt.replace(/<div.*?<\/div>/igm, '');
alert(txt);
</script>
Вместо ожидаемого:
<p>текст 1</p>
получаю:
<p>текст 1</p>
<div class="s1">
<hr>
<p>текст 2</p>
</div>
Где ошибка, разве точка не соответствует любому символу, включая \n?