Как удалить пробелы до и после строки? У меня есть два слова, которые оживляют пространство, конечно, и много пробелов до и после, мне нужно сделать, чтобы удалить пробелы до и после без промежуточного момента. Как удалить пробелы до и после него? Ответ 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; }
Ответ 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; }