自動ツイートの文字数について


Twitterの文字数制限は、半角280文字、全角140文字です。

自動ツイートでTwitter APIでメッセージを送信する時、テキスト文字列の中の改行は’\n’のエスケープ文字を使います。

Twitterは改行は半角1文字と扱うと思っていたので、改行の文字数をカウントする時に+1としていました。

しかしツイートのテキストに含まれる改行は’\n’なので、文字列としては+2で文字数がカウントされるんです。

改行がたくさんある場合は、その分だけ文字列の文字数は280文字を超えても大丈夫って事みたいです。

試しに下記の文字列をツイートしたらできました。文字列の文字数としては294文字ありますが、改行を1文字とすれば280文字になります。

  chrMessages =
   ‘1234567890\n’ +
    ‘1234567890\n’ +
    ‘1234567890\n’ +
    ‘1234567890\n’ +
    ‘1234567890\n’ +
    ‘1234567890\n’ +
    ‘1234567890\n’ +
    ‘1234567890\n’ +
    ‘1234567890\n’ +
    ‘1234567890\n’ +
    ‘1234567890\n’ +
    ‘1234567890\n’ +
    ‘1234567890\n’ +
    ‘123\n’;

改行だけ文字数の数え方を変えるのは面倒なので、気にせず+2でカウントする処理とします。