2012-04-02 16 views
1

空白文字の複数のインスタンスを置き換えたいと思っています。私の最初の検索はすべて/sの使用に焦点を当てているようですが、これに改行やその他の空白が含まれていますphp preg_replace複数の空白

これは近いはずですか? 1つのスペース

preg_replace('/ {2,}/', ' ', $string); 
+0

そのまま見えます。どうしたの? – MichaelRushton

+1

あなたの質問は何ですか?正規表現はよく見えます! – stema

+0

本当ですか?良い推測だったにちがいない。 –

答えて

3

2つの以上のインスタンスのスペースに" "を置き換えるこれは何をしようとしてについて:

preg_replace('/\s\s+/', ' ', $string); 
+1

OPはスペースだけでなく、 '\ s'を望んでいません。 – stema

+0

@stema '[] [] +'それに対する解決策になります... –

+0

'[]'角括弧は何をしますか?パターンを分割して読みやすくするのに役立つのでしょうか? –

0
$str = 'word word 123.'."\n\n".'new line word'; 
$replaced = preg_replace('#\h{2,}#m', ' ', $str); 

出力:

語単語123

新ライン仕事

エスケープシーケンスは水平スペースのみです。 m修飾子は複数行に対応しています。