前回の記事のままでは、(英語のツイートは良いのですが) 日本語のツイートはちゃんと表示されません。
たとえば下のように@MATLAB_jpのツイートを取得すると、\u(4ケタの16進数)の羅列からなるユニコードが得られます。
tw = twitty(); S = tw.userTimeline('screen_name', 'MATLAB_jp'); disp(S{1}{1}.text) #MATLAB \u4fbf\u5229\u95a2\u6570\u7d39\u4ecb \u300cismember\u300d...
そこで、下の関数unicode2txt.mで読めるテキストに変換することにします。関数hex2decでユニコードの16進数を10進数に変換し、さらに関数charで文字に変換しています。
% convert unicode-including string to readable text function str = unicode2txt(str) idx = strfind(str,'\u'); for ii=1:length(idx) idxTmp = idx(end+1-ii); str(idxTmp) = char(hex2dec(str(idxTmp+2:idxTmp+5))); str(idxTmp+1:idxTmp+5) = []; end
これで下のような日本語テキストを得ることができます。
tw = twitty(); S = tw.userTimeline('screen_name', 'MATLAB_jp'); disp(unicode2txt((S{1}{1}.text))) #MATLAB 便利関数紹介 「ismember」 はデータの重複した要素を探す関数ですが、...