0

我正在尝试使用 REXX 找出特定字符的数据类型。基本上我正在阅读一份报告,然后浏览每一行。在每一行中,都有一个角色被其他所有角色区别对待,我似乎无法弄清楚 REXX 认为它是什么。

值(字符本身)被定义为在名为 的变量中长度为一个字符的行的子字符串value

到目前为止,这是我所知道的:

SAY DATATYPE(value);Returns 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);

Returns 1,所以那里肯定有东西。我一直在为这个特殊的角色撞墙。

4

2 回答 2

0

您已经消除了所有可能是特殊值的字符(“字母数字”- 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、?、_、. 或 !。

于 2015-07-02T11:13:05.800 回答
-1

正如布鲁斯上面所说,但你还没有完成,把

say c2x(value)

在您的代码中并找出它显示为值的十六进制值。

于 2017-10-22T12:54:45.777 回答