Apps Scriptリファレンス: Apps Script Reference |障害・課題追跡: IssueTracker |Google Workspace: Status Dashboard - Summary

2018年1月30日火曜日

文字列をUTF16に変換する


漢字を16進数にする方法を調べている時に
その前処理としてUTF16にする方法を試した時の覚書です

「亜」をUTF16にしてみると 20124 になる



コード.gs
function get_utf16(str){
  var str = "亜";
  var utf16 = [];
  for(var i = 0; i < str.length; i++){
    utf16.push(str.charCodeAt(i));
  }
  Logger.log(utf16);
}
意訳
この機能がやること
文字列を指定して
UTF16の結果を入れる配列を用意して
文字列がサロゲートペアの場合は2回繰り返す処理にして
文字列をUTF16にして配列に追加して

追加した配列をログに出す








文字列の「あ」をサロゲートペアの「𠮟」にして実行すると
以下のようにペアでログに出る



関連記事
文字列→UTF16→16進数→文字列に変換する
文字列⇔UTF16⇔16進数の相互変換をする(サロゲートペア対応)


参考

String.prototype.charCodeAt()
https://developer.mozilla.org/ja/docs/Web/JavaScript/Reference/Global_Objects/String/charCodeAt

Latest post

Google Formsで記述式の質問に字数制限を設定したい

記述式の質問には「回答の検証」を設定することができます フォームの編集画面 右下の︙メニューで「回答の検証」を選択します 検証方法には「数値」「テキスト」「長さ」「正規表現」という種類があります 今回は字数制限したいので「長さ」を選びます 長さには「最大文字数」か「最小文字数」を...