Ваше регулярное выражение не так. Но для определения абзацев вам нужно искать два последовательных символа новой строки:
preg_match('/(\r?\n){2}/'
Возврат каретки \r
не является обязательным, и я бы просто проверил \n
перевод строки, поскольку большинство платформ воспринимают это как разрыв строки Очевидно, что эта проверка не будет выполнена, если отправленный текст будет одной строкой без абзацев или новых строк.
В качестве альтернативы вы также можете проверить наличие двух новых строк с любого рода пробелов между ними:
preg_match('/(\s*\n){2}/'