SUBSTR (left of =) Function

Replaces character value contents.

Category: Character
Restriction: I18N Level 0 functions are designed for use with Single Byte Character Sets (SBCS) only.
Tip: DBCS equivalent functions are KSUBSTR and KSUBSTRB .

Syntax

Required Arguments

variable

specifies a character variable.

position

specifies a numeric constant, variable, or expression that is the beginning character position.

characters-to-replace

specifies a character constant, variable, or expression that will replace the contents of variable.

Tip Enclose a literal string of characters in quotation marks.

Optional Argument

length

specifies a numeric constant, variable, or expression that is the length of the substring that will be replaced.

Restriction length cannot be larger than the length of the expression that remains in variable after position.
Tip If you omit length, SAS uses all of the characters on the right side of the assignment statement to replace the values of variable.

Details

If you use an undeclared variable, it will be assigned a default length of 8 when the SUBSTR function is compiled.
When you use the SUBSTR function on the left side of an assignment statement, SAS replaces the value of variable with the expression on the right side. SUBSTR replaces length characters starting at the character that you specify in position.

Example

The following SAS statements produce these results.
SAS Statement
Result
a='KIDNAP';
substr(a,1,3)='CAT';
put a;
 
CATNAP
b=a;
substr(b,4)='TY';
put b;
 
CATTY

See Also