удалить многострочный текст в php - PullRequest
0 голосов
/ 06 февраля 2019

когда я пытаюсь установить контакт, это выглядит так, я хочу удалить многострочное в этом случае

        $contents= "MULTIPLE CHOICE
    1 : _____ is defined as getting work done through others.
    A : Orientation




    B : 



                                Marketing




    C : 



                                Management "; 

echo $contents;

я делаю несколько вещей, но доза не работает

$contents = preg_replace("/\/\/\n/", "\n",$contents);
$contents = trim(preg_replace('/\s\s+/', ' ', $contents));

и другоекод, но доза не работает

Ответы [ 3 ]

0 голосов
/ 06 февраля 2019

Одна вещь, которую вы могли бы попробовать, это посмотреть, не являются ли ваши символы новой строки \ n, например, проверка на наличие [\ r \ n] получает CR и символ новой строки.

$contents = preg_replace("/[\r\n]+/", "\n", $contents);

Квантор + сообщает шаблонуmatcher, чтобы повторить предыдущий элемент один или несколько раз.Так что он соберет все дополнения подряд и заменит их одним.

Для решения проблемы с космосом вы можете просто запустить

$contents = preg_replace("/\s+/", " ", $contents);

На этом сайте есть много полезной информации о Regex

0 голосов
/ 07 февраля 2019

спасибо за все, что я нашел решение, и лучшее решение -

   // removing any none word characters after ': xxxxx' and replace it with ': '
// this will remove all spaces and line brakes after ':'
$contents = preg_replace('/:\W+/', ': ', $contents); 
// removing any multiple white spaces including line breaks and replace it with single line break
// this will remove all spaces and line brakes after the answer
$contents = preg_replace("/\s{2,}/", "\n", $contents);
0 голосов
/ 06 февраля 2019

, чтобы удалить все пробелы и разрывы строк:

 $contents = preg_replace("/[\n\r ]/", "",$contents);
...