サロゲートペアとはUTF-16で4バイトで表されるバイナリのことです。
昔々、ユニコードという組織が世界中の文字をコンピュータで
扱えるようにしようとしました。
作業を始めたときは文字の数は2バイト(65,536個)に収まるだろうと思われました。
しかし、作業を進めるに連れて2バイトでは全然足りないことが明らかになったのです。
そこで、まだ使用していないバイト値が2,048個あったので
それを2つに分割して組み合わせることにしました。
新たに1,024×1,024=1,048,576の文字を扱えるようになったのです。
これがサロゲートペアです。
VBScriptには文字数を返すLenというメソッドが存在しますが
これは2バイト単位での数を返します。文字列にサロゲートペアが含まれていた場合
正しい文字数を返しません。
そこでサロゲートペアを考慮したLen2というメソッドの実装を教えます。
vbs初心者なんですが [無断転載禁止]©2ch.net
■ このスレッドは過去ログ倉庫に格納されています
51ピラフ ◆9Jro6YFwm650
2018/07/13(金) 06:54:20.43ID:ZkDdtWs8■ このスレッドは過去ログ倉庫に格納されています
