怠日記

写真・金魚・昆虫・プログラミングの趣味を語るサイトです。似たようなことをnoteにも書いたり書いてなかったり。

VBScript - 文字のコードポイント、コードポイントに対応する文字を取得する | Asc, Chr, AscW, ChrW 関数

文字のコードポイント、またはコードポイントに対応する文字の取得方法を紹介する。

文字のコードポイントを取得する(ANSI/シフトJIS

文字の ANSI コードまたはシフト JIS コードを取得するには Asc 関数を使う。

Asc(string)
  • string: 文字を指定する。
    2文字以上の文字列を指定した場合、先頭の文字が対象になる。

例:文字の ANSI コードを取得する

WScript.Echo Asc("A")
' → 65
WScript.Echo Asc("ABC")
' → 65(先頭の A の ANSI コードが返る)

例:文字のシフト JIS コードを取得する

WScript.Echo Asc("あ")
' → -32096

(補足)
Asc("あ") の戻り値は -32096 になる。
これを16進数にすると 82A0 になる。
VBScript だと Hex(-32096) で求められる)
シフト JIS コード表では 82A0 は “あ” なので正しい。

コードポイントに対応する文字を取得する(ANSI/シフトJIS

ANSI コードまたはシフト JIS コードに対応する文字を取得するには Chr 関数を使う。

Chr(charcode)
  • charcodeANSI コードまたはシフト JIS コード

例:ANSI コードに対応する文字を取得する

WScript.Echo Chr(65)
' → "A"
WScript.Echo Chr(97)
' → "a"

例:シフト JIS コードに対応する文字を取得する

WScript.Echo Chr(-32096)
' → "あ"

文字のコードポイントを取得する(Unicode

文字の Unicode コードポイントを取得するには AscW 関数を使う。

AscW(string)
  • string: 文字を指定する。
    2文字以上の文字列を指定した場合、先頭の文字が対象になる。

例:文字の Unicode コードポイントを取得する

WScript.Echo AscW("A")
' → 65
WScript.Echo AscW("ABC")
' → 65(先頭の文字 A のコードポイントが返る)
WScript.Echo AscW("あ")
' → 12354

コードポイントに対応する文字を取得する(Unicode

Unicode コードポイントに対応する文字を取得するには ChrW 関数を使う。

ChrW(charcode)
  • charcodeUnicode コードポイント

例:Unicode コードポイントに対応する文字を取得する

WScript.Echo ChrW(65)
' → "A"
WScript.Echo ChrW(97)
' → "a"
WScript.Echo ChrW(12354)
' → "あ"