Не могу понять тип данных персонажа в REXX

Я пытаюсь выяснить тип данных конкретного символа, используя REXX. В основном я читаю отчет, а затем прохожу каждую строку. В каждой строке есть один персонаж, который по-разному воспринимается всеми остальными, и я не могу понять, что REXX думает.

Значение (сам символ) определяется как подстрока строки длиной один символ в переменной с именем value,

Пока это то, что я знаю:

SAY DATATYPE(value); возвращается CHARЯ знаю, что это персонаж.

SAY DATATYPE(value, "A");
SAY DATATYPE(value, "B");
SAY DATATYPE(value, "L");
SAY DATATYPE(value, "M");
SAY DATATYPE(value, "N");
SAY DATATYPE(value, "S");
SAY DATATYPE(value, "U");
SAY DATATYPE(value, "W");
SAY DATATYPE(value, "X");
SAY value = "";
SAY value = " ";
SAY value = NULL;

Все возвращаются 0,

И наконец:

SAY LENGTH(value);

Возвращает 1так что там определенно что-то есть. Я продолжаю бить кирпичную стену для этого конкретного персонажа.

2 ответа

Вы удалили все символы, которые могут быть специальными значениями ("Буквенно-цифровые" - az, AZ, 0-9; "Двоичные" - 0-1; "Нижний регистр" - az; "Смешанный регистр" - az, AZ; "Число "- 0-9;" Символ "- az, AZ, 0-9,?, _, .,!; " Прописные буквы "- AZ;" Целое число "- 0-9;" шестнадцатеричный "- af, AF, 0-9), так что это что-то еще. Обратите внимание, что большинство этих групп символов перекрывают друг друга - все, что вы действительно подтвердили, это то, что это не AZ, az, 0-9,?, _, . Или!.

Как сказал выше Брюс, но ты еще не сделал, положи

say c2x(value)

в вашем коде и узнайте, что он показывает как шестнадцатеричное значение.

Другие вопросы по тегам