[PHP-users 33106] Re: mb_ereg_replace について
KeyKey
ihavetwopens @ gmail.com
2008年 1月 16日 (水) 16:15:30 JST
KeyKeyと申します。
>「申」の文字コードの問題のようです。
>> preg_replaceがマルチバイトに対して問題がないのか、2点気になっています。
>>なにかもっと良い解決策はないでしょうか?
あまり美しいとはいえませんが
文字コードにしてしまうのはどうでしょうか?
$pattern = bin_to_hex('申込番号 ');
$pattern .= '(\d{1,5})';
$pattern .= bin_to_hex(' ');
if (preg_match_all('/' . $pattern . '/m', $subject, $match)) {
print_r($match[1]);
}
function bin_to_hex($str)
{
$str = bin2hex($str);
$str = '\x' . chunk_split($str, 2, '\x');
$str = substr($str, 0, -2);
return $str;
}
これならSJIS,EUC,UTF-8どれでも実行することができ
ます。
PHP-users メーリングリストの案内