Я разрабатываю один сервисный сайт на PHP, который просто отображает сообщения, которые публикуются посетителями (в идеале, окружающие тему сайта), Каждый может отправлять до трех сообщений в час.
Поскольку веб-сайт будет только одной страницей, я бы хотел контролировать вертикальную длину каждого сообщения. Тем не менее, я хочу хотя бы частично сохранить разрывы строк в исходном сообщении. Компромисс должен состоять в том, чтобы разрешить два разрыва строки, но если их больше двух, замените их в общей сложности двумя разрывами строк подряд. Qaru реализует это.
Например:
"Дикобразы\Нер\п\п\п\nporcupiney."
будет изменено на
"Дикобразы < br/" > представл ют собой < br/ " > < br/" > porcupiney."
Один сложный аспект проверки разрывов строк - это возможность их сбора и хранения как \r\n,\r или\n. Я думал о преобразовании всех разрывов строк в < br/" > s с помощью nl2br(), но это казалось ненужным.
Мой вопрос: используя регулярные выражения в PHP (с такими функциями, как preg_match() и preg_replace()), как я могу проверить наличие экземпляров более двух строк в строке (с пробелом или без пробела между ними), а затем изменить их в общей сложности на два разрыва строки?