2011-01-27 4 views
3

Twitter APIを使用してColdFusionを使用してLists APIからステータスをプルダウンしようとしていますが、JSON形式とJSONコンポーネントを使用して必要なものをすべて解析しています。TwitterからのUnicode文字の変換ColdFusionを使用したJSON APIフィード

私が遭遇した問題は、画面に正しく表示されるようにUnicode文字を変換しようとしていることです。ここ

はJSONフィード

F\u00e0bregas 

から来ているサンプルデータが、私はこれを変換するために使用できるいくつかの正規表現はありますか?

は現在、私はそれで結構ですJSONフィード

#node.user.name# 

からの生データを書き出す必要があり、それは私がオーバー正しいアクセントでそれがファブレガスとして表示される変換する必要があるの\ u00e0が含まれています'a'。

答えて

0

は、より良い方法がなければならないが、それまで私は、これは完璧に動作

<cfset y = 'F\u00e0bregas'/> 
<cfset x = evaluate(de(rereplace(y,'\\u([a-fA-f0-9]{4})','##chr(inputbasen(''\1'',16))##','all')))/> 
+0

これがうまくいくと思います!どうもありがとうございました! –

1

最初にこれは正規表現の問題よりも文字エンコードの問題だと思います。

どのようにTwitterデータを取得していますか? <cfhttp>を使用している場合は、charset属性をUTF-8に設定してみてください。これにより、TwitterからのデータがUTF-8で確実に届くようになります。

次に、データを出力しようとしているページの文字エンコードを明示的に設定する必要があります。例:

<!--- URL and FORM encoding to UTF-8 ---> 
<cfset setEncoding("URL", "UTF-8") /> 
<cfset setEncoding("FORM", "UTF-8") /> 

<cfcontent type="text/html; charset=UTF-8" /> 

<cfoutput>#node.user.name#</cfoutput> 

さらに詳しい情報はhereです。希望が助けてくれる!

関連する問題