Skip to main content

This is documentation for Caché & Ensemble.

For information on converting to InterSystems IRISOpens in a new window, see the InterSystems IRIS Migration Guide and Migrating to InterSystems IRIS, both available on the WRC Distributions pageOpens in a new window (login required).


Returns the total width of the characters in an expression.




Argument Description
expression A string expression
pitch Optional — The numeric pitch value to use for full-width characters. The default is 2. Other permissible values are 1, 1.25, and 1.5. (These values with any number of trailing zeros are permissible.) All other pitch values result in a <FUNCTION> error.


$ZWIDTH returns the total width of the characters in expression. The pitch value determines the width to use for full-width characters. All other characters are assigned a width of 1 and are considered to be half-width.

$ZWIDTH is only available in Unicode versions of Caché.


$ZWIDTH can be abbreviated as $ZW in DSM-J mode. This abbreviation cannot be used in Caché mode.


Assume that the variable STR contains two half-width characters followed by a full-width character:

Copy code to clipboard

returns 3.5.

In this example, the two half-width characters total 2. Adding 1.5 (the specified pitch value) for the full-width characters produces a total of 3.5.


Full-width characters are determined by examining the pattern-match table loaded for your Caché process. Any character with the full-width attribute is considered to be a full-width character. You can use the special ZFWCHARZ patcode to check for this attribute (char?1ZFWCHARZ). For more information about the full-width attribute, see the description of the $X/$Y Tab in the section on “System Classes for National Language Support” in Caché Specialized System Tools and Utilities.

See Also

FeedbackOpens in a new window