Skip to main content
PRERELEASE CONTENT

$WISWIDE (ObjectScript)

Returns a flag indicating whether a string contains surrogate pairs.

Synopsis

$WISWIDE(string)

Argument

Argument Description
string A string or expression that evaluates to a string.

Description

$WISWIDE returns a boolean value indicating whether string contains surrogate pairs. 0=string does not contain any surrogate pairs. 1=string contains one or more surrogate pairs.

A surrogate pair is a pair of 16-bit InterSystems IRIS character elements that together encode a single Unicode character. Surrogate pairs are used to represent certain ideographs which are used in Chinese, Japanese kanji, and Korean hanja. (Most commonly-used Chinese, kanji, and hanja characters are represented by standard 16-bit Unicode encodings.) Surrogate pairs provide InterSystems IRIS support for the Japanese JIS X0213:2004 (JIS2004) encoding standard and the Chinese GB18030 encoding standard.

A surrogate pair consists of high-order 16-bit character element in the hexadecimal range D800 through DBFF, and a low-order 16-bit character element in the hexadecimal range DC00 through DFFF.

Example

The following example shows $WISWIDE returning a boolean for a surrogate pair:

  SET spair=$CHAR($ZHEX("D806"),$ZHEX("DC06")) /* surrogate pair */
  SET xpair=$CHAR($ZHEX("DC06"),$ZHEX("D806")) /* NOT a surrogate pair */
  SET str="AB"_spair_"CD"
  WRITE !,$WISWIDE(str)," = surrogate pair(s) in string?"
  SET xstr="AB"_xpair_"CD"
  WRITE !,$WISWIDE(xstr)," = surrogate pair(s) in string?"

See Also

Purpose of this instance: Draft documentation
DocReleaseID: SupplyChain2025.1
Content loaded from:
/staging/learning/iris-doc/2025.1.x/doc/supply-chain/en-us/src/
/staging/learning/iris-doc/2025.1.x/doc/cache/en-us/src/
/staging/learning/iris-doc/2025.1.x/doc/ensemble/en-us/src/
/staging/learning/iris-doc/2025.1.x/doc/iris/en-us/src/
/staging/learning/iris-doc/2025.1.x/doc/security/en-us/src/
Excluded items: PAGE_bi, PAGE_deployment, PAGE_interoperability, PAGE_release
FeedbackOpens in a new tab