JavaScriptを有効にしてください

【PHP】ノーブレークスペース(\u00a0)への対処

 ·  ☕ 1 分で読めます

ノーブレークスペース(\u00a0)への対処

HTML を解析するプログラムを書いていたら置換などが出来ない 空白( ) を発見しました。

調査

該当の文字列のユニコードの値を取得するため json にしてました。

1
2
$html = 'hoge piyo';
var_dump(json_encode($html, true));

※サンプルの空白は通常のスペースになっています。

1
string(14) "hoge\u00a0piyo"

これで文字列を特定出来ました。

\u00a0

このスペースは ノーブレークスペース というもので HTML  の事。

対処

文字列として対処

1
2
3
4
$html = 'hoge piyo';

$exp = expload (`\u{00a0}`, $html);
var_dump($exp);

正規表現で対処

1
2
3
4
$html = 'hoge piyo';

$exp = preg_split (`~\x{00a0}~siu`, $html);
var_dump($exp);
共有

こぴぺたん
著者
こぴぺたん
Copy & Paste Engineer