trim
的方法來去除頭尾的空白,但若要去除字串中的空白呢?這時通常會用字串替換的方式把空白替換成空字串,如下:
//H之前空一格,o與W之間有兩個空格,在d後面又有一個空格 $str = ' Hello World '; echo 'head' . str_replace(' ', '', $str) . 'tail';結果為:
headHelloWorldtail由上面的結果可知,若在PHP中只是要去掉空格,使用
str_replace
就夠了,但若在字串中除了空格,還有其他如\t
、\v
、\n
等的空白字元呢?如下:
//H前面一個空格,但o與W之間還有d後面是Tab $str = ' Hello World '; echo 'head' . str_replace(' ', '', $str) . 'tail';若依
str_replace
的方法,這裡只能把空白去掉,而其他字元仍會留著,如下面結果:
headHello World tail這時,要使用
preg_replace
來搭配正規表示式去除:
echo 'head' . preg_replace('/\s+/', '', $str) . 'tail';結果為:
headHelloWorldtail上列的
\s+
表示只要是有一個以上的空白字元就符合被替換的條件,其意義和符合的字元,可以參考這裡。參考資料
沒有留言:
張貼留言