The most basic string expression is any number of characters contained in double quotes ("for instance"). As in C the escape character is \ and there is a number of commands you can use within a string:
Character sequence | Meaning | Notes |
---|---|---|
\\ | Backslash | |
\" | Double-quote | |
\{ | Curly bracket left | |
\} | Curly bracket right | |
\n | Newline ($0A) | |
\t | Tab ($09) | |
\1-\9 | Macroargument | Only in macros |
\@ | Labelname suffix | Only in macros and repts |
A funky feature is {symbol} withing a string. This will examine the type of the symbol and insert its value accordingly. If symbol is a string symbol the symbols value is simply copied. If it's a numeric symbol the value is converted to hexadecimal notation and inserted as a string.
HINT: The {symbol} construct can also be used outside strings. The symbols value is again inserted as a string. This is just a short way of doing "{symbol}".
Whenever the macro-language expects a string you can actually use a string expression. This consists of one or more of these function. Yes, you can nest them. Note that some of these functions actually return an integer and can be used as part of an integer expression!
Name | Operation |
---|---|
STRLEN(stringexpr) | Returns the number of characters in string |
STRCAT(stringexpr1,stringexpr2) | Appends stringexpr2 to stringexpr1. |
STRCMP(stringexpr1,stringexpr2) | Returns negative if stringexpr1 is alphabetically less than stringexpr2 Zero if they match Positive if greater than |
STRIN(haystack,needle) | Returns needles position within haystack or zero if it's not present |
STRSUB(stringexpr,pos,count) | Returns a substring of stringexpr starting at pos (first character is position 1) and with count characters |
STRUPR(stringexpr) | Converts all characters in string to capitals and returns the new string |
STRLWR(string) | Converts all characters in string to lower case and returns the new string |
Last updated 21 June 1997 by Carsten Sorensen