zoukankan      html  css  js  c++  java
  • SAS学习笔记42 宏程序

    Autocall Macro是由SAS提供的一些实现特定功能的Macro Program,可以在代码中直接使用

    • 其中以Q开头的相比正常的多了隐藏特殊字符的功能(称之为Macro Quoting);

    • K开头的代表是专门针对DBCS(Double Byte Character Set)语言设计的,即适用于类似中文的双字节存储语言

    为什么INDEX函数返回的结果是8呢?

    因为像INDEX、FIND等这类搜索函数是通过单字节编码进行查找的,有两个过程:

    1. 首先将所有的字符串转换成编码,每个字节对应一个编码;

    2. 然后按照编码进行搜索;

    1个汉字占2个字节,就会对应2个编码。在某些特殊的情况下,就会出现这种情况:某2个汉字共4个编码,第1个汉字的第2个编码与第2个汉字的第1个编码凑成的编码,正好是要搜索的汉字的编码。虽然该汉字没有在查找的文本中出现,但是其编码出现了。然后就会返回搜索到的编码位置:

    三个有关Macro的System Option,在日志中输出更加详细的信息:

    • MPRINT:在日志中输出Macro生成的SAS代码;

    • MLOGIC:在日志中输出Macro的执行逻辑;

    • MSYMBOLGEN:在日志中输出Macro Variables的解析结果;

    Delete User-Defined Macro

    跟Macro Variable一样,如果不想再用某个Macro Program,也可以将其删除掉。语法非常简单:

    %SYSMACDELETE macro_name;

  • 相关阅读:
    细菌觅食优化算法
    windows文件名编码格式测试结果及猜想
    Exception
    maven创建web项目注意事项
    Majaro安装卡在Fixing hardcoded icons原因
    gnome更改ibus输入法候选词字体大小
    MariaDB用zip包安装
    JAVA获取时间戳
    自增不连续解决方案
    WEB项目目录结构
  • 原文地址:https://www.cnblogs.com/abble/p/11264174.html
Copyright © 2011-2022 走看看