У меня есть такие текстовые данные:
Learn More
Hide [x]
Colors
Fetching Colors description...
Show more topics
Art exhibitions
Fetching Art exhibitions description...
Abstract art
Fetching Abstract art description...
Representational art
Fetching Representational art description...
Я бы хотел удалить все символы возврата каретки, чтобы получилось так:
Learn More Hide [x] Colors Fetching Colors description... Show more topics
Как мне это сделать в PHP? Обратите внимание, что строки могут быть строкой UTF-8, и нам необходимо учитывать различные типы символов табуляции, возврата каретки и пробелов. (Я думаю о принципах алгоритма токенизатора, используемого в компиляторе, где учитываются множественные символы возврата каретки и пробелов.)






Вы можете попробовать это с помощью preg_replace:
http://php.net/manual/en/function.preg-replace.php
$data = preg_replace('/[\s\t\n]{2,}/', ' ', $data);
Вы можете узнать больше о регулярных выражениях, где: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Guide/Regular_Expressions
Вы можете протестировать их вживую здесь: https://www.phpliveregex.com/
Попробуйте сделать это с помощью preg_replace (), чтобы заменить пробелы несколько на пробелы не замужем вместо удаления табуляции (\t), пробелов (\s), возврата каретки (\r) или перевода строки (\n)
echo preg_replace('/\s+/', ' ', $your_input_string_with_multi_space_goes);
возможно дубликат stackoverflow.com/questions/6394416/… и stackoverflow.com/questions/6360566/…