|SAS Macro Language: Reference
When the SAS System processes a program, a component called the word
scanner reads the program, character by character, and groups the characters
into words. These words are referred to as tokens. The SAS System recognizes
four general types of tokens:
- One or more characters enclosed in single or double quotes.
Examples of literals include
- One or more characters beginning with a letter or an underscore.
Later characters can be letters, underscores, and digits.
- A numeric value. Number tokens include
- integers. Integers are numbers that do not contain a decimal point
or an exponent. Examples of integers include 1, 72, and 5000. SAS date, time,
and datetime constants such as '24AUG97'D are integers, as are hexadecimal
constants such as 0C4X.
- real (floating-point) numbers. Floating-point numbers contain
a decimal point or an exponent. Examples include numbers such as 2.35, 5.,
2.3E1, and 5.4E- 1.
- Special character
- Any character that is not a letter, number, or underscore.
Examples of special characters include
= + - % & ; ( )
The maximum length of any type of token is 200 characters. A token
when the tokenizer encounters one of the following situations:
- the beginning of a new token
- a blank after a name or number
- in a literal token, a quote of the same type that started the
token. There is an exception. A quotation mark followed by a quotation mark
of the same type is interpreted as a single quotation mark that becomes part
of the literal token. For example, in
'Mary''s', the fourth quotation
mark terminates the literal token. The second and third quotation marks are
interpreted as a single character which is included in the literal token.
Copyright 1999 by SAS Institute Inc., Cary, NC, USA. All rights reserved.