$str[код из базы]$str[^str.match[<br>][g]{^#0A}]$str[^str.match[<br/>][g]{^#0A}]$str[^str.match[<br />][g]{^#0A}]$str[^str.match[<BR>][g]{^#0A}]$str[^str.match[<BR/>][g]{^#0A}]$str[^str.match[<BR />][g]{^#0A}]
это
$str[код из базы]$str[^str.match[<br\s*\/?>][gi]{^#0A}]
Вам уже подсказали как быть, приведя ссылку на нужную страницу в документации. Неужели так сложно прочитать, тем более что без понимания этого раздела у вас будет и потом много аналогичных вопросов? Ну и если уж совсем лень и скукота - то хотя бы поищите на этой странице упоминания слова "textarea" - найдете ответ на свой вопрос. Не?
В доке написано следующее: Текст, написанный разработчиком в теле страниц, также подвергается автоматическому преобразованию. В нём Parser выполняет оптимизацию пробельных символов (пробел, табуляция, перевод строки).
Что это значит? Что если у вас есть вот такой код:
$s[before_many_spaces after_many_spaces]$s
то в браузер будет выведено
before_many_spaces after_many_spaces
т.е. все пробелы схлопнутся до одного. на месте пробелов могут быть и другие пробельные символы (таб, новая строка - ваш случай). Чтобы парсер такого не делал нужную строку надо пометить соотвествующим образом
Тайнтить еще не преобразованную сроку, т.е. ещё содержащую <br/> - не соответствует вашей задаче (вы же понимаете разницу между символом новой строки и тэгом <br />?).
P.S. и не надо пожалуйста копипастить свои ответы в разные ветки