$indexcontent = file_get_contents('index.html');
$pattern = '/<!--top-index-start-->(.*?)<!--top-index-end-->/';
$replacement = '<!--top-index-start-->' . $_POST['editor1'] . '<!--top-index-end-->';
$indexcontent = preg_replace($pattern, $replacement, $indexcontent);
file_put_contents('index.html', $indexcontent);
На старте когда в хтмл стоит
<!--top-index-start--><!--top-index-end-->
виражение его находит и заменяет например на вот такое <!--top-index-start--><p>dddddddddddddddddddddddddd</p>и уже следующая попытка замены терпит неудачу. Подозреваются символы перевода строки и пробелы, но как я ни пытался подобрать регулярку ничего не работает. В нотепаде ++ после
<!--top-index-end-->
<p>dddddddddddddddddddddddddd</p>стоит символы CRLF. Но подобрать ничего не могу.
П.С. Прошу предыдущую тему созданную мною удалить.