0

I am trying to figure out the data type of a specific character using REXX. Basically I am reading a report and then going through each line. In each line there is one character that gets treated differently by all of the other ones, and I can't seem to figure out what REXX thinks it is.

The value (character itself) is defined as a substring of the line that is one character long in a variable called value.

So far this is what I know:

SAY DATATYPE(value); returns CHAR, so I know it is a character.

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;

All return 0.

And finally:

SAY LENGTH(value);

Returns 1, so there is definitely something there. I keep hitting a brick wall for this particular character.

David Mordigal
  • 399
  • 3
  • 19

2 Answers2

0

You've eliminated all the characters that can be special values ("Alphanumeric" - a-z, A-Z, 0-9; "Binary" - 0-1; "Lowercase" - a-z; "Mixed case" - a-z, A-Z; "Number" - 0-9; "Symbol" - a-z, A-Z, 0-9, ?, _, ., !; "Uppercase" - A-Z; "Whole number" - 0-9; "heXadecimal" - a-f, A-F, 0-9), so it's something else. Note than most of these character groups overlap each other - all you've really confirmed is that it isn't A-Z, a-z, 0-9, ?, _, ., or !.

Ross Patterson
  • 9,527
  • 33
  • 48
-1

As Bruce said above, but you've not done, put

say c2x(value)

in your code and find out what it shows as the hex for value.