Как использовать preg_replace для нескольких последовательных пробелов - PullRequest
0 голосов
/ 27 декабря 2018

Мне нужно проверить строку на наличие нескольких последовательных пробелов и заменить их на <br>.

Я пытаюсь позволить пользователю волшебным образом вставить <br> в строку, используя два пробела, который затем будет добавлен в таблицу с помощью <br> вместо двух пробелов.

Я пробовал несколько комбинаций preg_replace, но, похоже, не совсем правильно понял.

    $value = preg_replace('/\s+\s+/','<br>',$value);
    $value = preg_replace('/\s+\','<br>',$value);
    $value = preg_replace('/\s++/','<br>',$value);

Очевидно, я не очень хорош с preg_replace, может кто-нибудь предложить решение?

Ответы [ 2 ]

0 голосов
/ 27 декабря 2018

Если вы хотите заменить 2 пробела, вы также можете использовать str_replace :

echo str_replace("  ", " ", $value);

Если вы хотите использовать регулярное выражение, вы можете использовать \h{2} для соответствия 2 горизонталипробельные символы

$value = "Two  spaces and one space and three   spaces and ten          spaces";
echo preg_replace('/\h{2}/', '<br>', $value);

Php demo

0 голосов
/ 27 декабря 2018

Для простого примера, который у меня есть @ miken32, ответ был точным.

$value = preg_replace('/  /','<br>',$value);

Работает отлично.

...