Регулярное выражение: удаление лишних пробелов, разрывов строк и пустых мест - PullRequest
0 голосов
/ 28 января 2019

Обновление: кажется, что это просто проблема регулярных выражений.

Я пытаюсь удалить все лишние пробелы, разрывы строк и пустые места из пользовательской истории с помощью функции, позволяющей получить только 100 символов

Проблема в том, что ограничение в 100 символов работает, удаление пробелов, разрывов строк и пробелов не применяется:

function aboutme_echo($x, $length)
{ 
    if(strlen($x) <= $length) 
    { 
        echo $x; 
    }
    else
    {
        $y = substr($x,0,$length) . '...'; 
        echo $y; 
    } 
}

aboutme_echo((preg_replace("/\s+/"," ", $aboutme)), 100);

Пример строки: ???WHAT ?!Это безумие!

Короче говоря,

кто-то обратился ко мне, у которого был фармацевтический вирус.«У меня есть возможность перестроить их сайт, но я не могу спешить с планированием и постановкой, но я ...

1 Ответ

0 голосов
/ 28 января 2019

Что-то вроде этого может быть?

function cleanExcerpt($string) {
   $pattern = '/\s+/';
   $replace = ' ';
   $cleanstring = trim(preg_replace($pattern,$replace,$string));
   return strtok(wordwrap($cleanstring, 100, "...\n"), "\n");
}

Чтобы использовать, вы должны пройти через строку и вызвать функцию, подобную этой:

$string = "Example String: ???WHAT?! That's crazy! Long story short, ??someone reached ";

echo cleanExcerpt($string);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...