Hatena::ブログ(Diary)

M59の記録 Twitter

2009年08月28日

Twitterの140字制限に、ブラウザからだと引っかかるが、外部ツールからだと引っかからない例

サロゲートペアの文字投稿テスト。音楽記号 𝄊ダ・カーポ𝄌コーダ𝄞ト音記号𝄡ハ音記号𝄢ヘ音記号𝄐フェルマータ𝅘𝅥𝅯𝅭付点十六分音符麻雀牌🀀東🀁南🀂西🀃北🀄中🀅發🀆白🀇一萬🀐一ソウ🀙一ピン ドミノ牌🀲🀳🀴🀵🁨🁩🁪🁢 漢字拡張B 𤼵(癶に弓矢)𠀋(丈に丶)𧜣(衣偏に鳥)とこんな感じ。

Ryuseiさんのツイート: "サロゲートペアの文字投稿テスト。音楽記号 "

丁度140字の投稿の投稿だけど、ブラウザからは投稿できない例。

JavaScriptUTF-16で処理しているので、単純にlengthで数えると、サロゲートペアを2文字と数えてしまうため、ブラウザからだと字数オーバーと見做される。しかしUTF-8やUTF-32にはサロゲートペアなんて考えは無いので、沒問題に投稿できてしまう。

ちなみに、結合文字や異体字セレクタが存在するので、Unicodeのコードポイント数≠文字数である。たとえば「か」に半濁点の平仮名「か゚」は U+304B U+309A で表されているし、付点十六分音符「𝅘𝅥𝅯𝅭」も U+1D158 U+1D165 U+1D16F U+1D16D の並びである。それを考えると、上記の投稿は正確には140文字に達していないことになるのか。

mandel59mandel59 2012/06/09 21:53 追記: 現在ではサロゲートペアの字でも1文字にカウントされる。

スパム対策のためのダミーです。もし見えても何も入力しないでください
ゲスト


画像認証

トラックバック - http://d.hatena.ne.jp/mandel59/20090828/1251469685