美文网首页
第七十二章 Caché 函数大全 $WISWIDE 函数

第七十二章 Caché 函数大全 $WISWIDE 函数

作者: Cache技术分享 | 来源:发表于2020-11-01 10:27 被阅读0次

    第七十二章 Caché 函数大全 $WISWIDE 函数

    返回一个标志,该标志指示字符串是否包含代理对。

    大纲

    $WISWIDE(string)
    

    参数

    • string 字符串或计算结果为字符串的表达式。

    描述

    $WISWIDE返回一个布尔值,该值指示字符串是否包含代理对。 0 =字符串不包含任何代理对。 1 =字符串包含一个或多个代理对。

    代理对是一对16位Caché字符元素,它们一起编码一个Unicode字符。代理对用于代表某些表意文字,这些表意文字用于中文,日文汉字和韩文汉字。 (大多数常用的中文,汉字和汉字字符由标准的16位Unicode编码表示。)代理对为日语JIS X0213:2004(JIS2004)编码标准和中文GB18030编码标准提供了Caché支持。

    代理对由在十六进制范围D800至DBFF中的高阶16位字符元素和在十六进制范围DC00至DFFF中的低阶16位字符元素组成。

    示例

    以下示例显示$WISWIDE返回代理对的布尔值:

    /// d ##class(PHA.TEST.Function).WISWIDE()
    ClassMethod WISWIDE()
    {
        IF $SYSTEM.Version.IsUnicode()  {
            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?"
        } ELSE {
            WRITE "This example requires a Unicode installation of Caché"
        }
    }
    
    DHC-APP>d ##class(PHA.TEST.Function).WISWIDE()
     
    1 = surrogate pair(s) in string?
    0 = surrogate pair(s) in string?
    

    相关文章

      网友评论

          本文标题:第七十二章 Caché 函数大全 $WISWIDE 函数

          本文链接:https://www.haomeiwen.com/subject/aweyvktx.html