文中と文の前後の空白処理

テキストの中で空白が変なところに入ったりすることがある。
PHPだと、空白の削除はtrim()を使えばいいとよく書いてあるんだけど、これだと前後の空白しかとれなくて文中の空白は漏れてしまう。
正規表現でやる必要があると思い調べていたら、str_replaceを使えばそのまんまの処理ができるようになってる・・・。

str_replace(“ ”,””, $str);

これだと全角のみで、半角の空白がもれるので

$str = str_replace(” “,””, $str);
$str = str_replace(“ ”,””, $str);

なんかこれを一発でやってくれるものがありそうだけど・・・。
取りあえず関数にして

$message=” あたしは シンゴ です。 ”;
print trim($message).”
“;

function k_replace($str){
$str = str_replace(” “,””, $str);
return str_replace(“ ”,””, $str);
}

print k_replace($message).”
“;

で、結果は

あたしは シンゴ です。
あたしはシンゴです。

こうやって、こまめに関数にするようになって楽になった気はする。

1 thoughts on “文中と文の前後の空白処理

コメントを残す