ブログ詳細

画像

PHPで改行毎のスペースを削除したい

改行毎にスペースを削除するには、preg_replace関数を使って正規表現置換を行う必要がある。
$str = "Hello world.\n\nThis is a new line.\n  \nAnother line.";
$str = preg_replace('/\h*[\r\n]+\h*/', "\n", $str);
echo $str;
preg_replace関数の第1引数には、改行やスペースを表す正規表現パターン/\h*[\r\n]+\h*/を指定し、第2引数には改行文字\nを指定する。 
これにより、改行毎にスペースが削除された文字列が出力される。

全角スペースも削除したい場合
$str = "テスト  \n  テスト\n\n  テスト \n";
$str = preg_replace('/[ \t\x{3000}]*[\r\n]+[ \t\x{3000}]*/u', "\n", $str);
echo $str;

当社は、お客様が当社の Web サイト (その他のメディア フォーム、モバイル Web サイト、または関連または接続されているモバイル アプリケーションを含む) にアクセスしたときに、Cookie またはその他の追跡技術を使用して、サイトをカスタマイズし、お客様のエクスペリエンスを向上させる場合があります。 もっと詳しく

許可する