Подтвердить что ты не робот

Как удалить пробелы до и после строки?

У меня есть два слова, которые оживляют пространство, конечно, и много пробелов до и после, мне нужно сделать, чтобы удалить пробелы до и после без промежуточного момента.

Как удалить пробелы до и после него?

4b9b3361

Ответ 1

Для этого вам не нужно regex, используйте trim():

$words = '      my words     ';
$words = trim($words);
var_dump($words);
// string(8) "my words"

Эта функция возвращает строку с пробелом, разделенным с начала и конца строки.

Ответ 2

Для полноты (поскольку этот вопрос отмечен regex), здесь выполняется повторная реализация trim() в regex:

function preg_trim($subject) {
    $regex = "/\s*(\.*)\s*/s";
    if (preg_match ($regex, $subject, $matches)) {
        $subject = $matches[1];
    }
    return $subject;
}
$words = '      my words     ';
$words = preg_trim($words);
var_dump($words);
// string(8) "my words"

Ответ 3

Почему-то два решения выше не работали для меня, поэтому я придумал это решение.

function cleanSpaces($string) {
    while(substr($string, 0,1)==" ") 
    {
        $string = substr($string, 1);
        cleanSpaces($string);
    }
    while(substr($string, -1)==" ")
    {
        $string = substr($string, 0, -1);
        cleanSpaces($string);
    }
    return $string;
}