I\'m trying to replace multiple spaces with a single space. When I use ereg_replace
, I get an error about it being deprecated.
ereg_replace(\"[ \\t\\n\\r]+\", \" \", $string);
Is there an identical replacement for it. I need to replace multiple \" \"
white spaces and multiple nbsp
white spaces with a single white space.
Use preg_replace()
and instead of [ \\t\\n\\r]
use \\s
:
$output = preg_replace(\'!\\s+!\', \' \', $input);
From Regular Expression Basic Syntax Reference:
\\d, \\w and \\s
Shorthand character classes matching
digits, word characters (letters,
digits, and underscores), and
whitespace (spaces, tabs, and line
breaks). Can be used inside and
outside character classes.
$output = preg_replace(\'/\\s+/\', \' \',$input);
\\s is shorthand for [ \\t\\n\\r]
. Multiple spaces will be replaced with single space.
preg_replace(\"/[[:blank:]]+/\",\" \",$input)