検索

ホームページ  >  に質問  >  本文

mysqlまたはphpで「u00e9」をutf8文字に変換するにはどうすればよいですか?

<p>mysql にインポートしている乱雑なデータのデータ クリーニングを行っています。 </p> <p>データには、「u00e9」など、実際に文字列に埋め込まれている「疑似」Unicode 文字が含まれています。 </p> <p>フィールドは次のようになります。「Jalostotitlu00e1n」 この厄介な「u00e1n」を削除し、対応する utf 文字</p> に置き換える必要があります。 <p>おそらく部分文字列と CHR を使用して、mysql でこれを行うこともできますが、PHP 経由でデータを前処理しているので、そこでも行うことができます。 </p> <p>utf データを使用するように mysql と php を設定する方法はすでに知っています。実際、問題はインポートしたソース データにあります。 </p> <p>ありがとうございます</p>
P粉704196697P粉704196697521日前771

全員に返信(2)返信します

  • P粉743288436

    P粉7432884362023-08-25 13:53:33

    /* utf8 htmlをansiに変換するphp関数 */

    リーリー

    返事
    0
  • P粉198814372

    P粉1988143722023-08-25 00:30:22

    ###やり方がある。すべての

    uXXXX を HTML 表現に置き換え、html_entity_decode() を実行します。

    つまり

    echo html_entity_decode("Jalostotitlán"); 形式

    u1234 のすべての UTF 文字は、HTML では として出力できます。ただし、UTF シーケンスの先頭を識別する文字が他にない場合、誤検知が大量に発生する可能性があるため、置換を行うことは非常に困難です。単純な正規表現は のようになります。

    preg_replace('/u([\da-fA-F]{4})/', '&#x\1;', $str)

    返事
    0
  • キャンセル返事