ABAP的匹配

  • 通配符

    1. 字符串操作中的通配符

      • *:多位字符的通配符

      • +:一位字符的通配符

      • #:字符操作中的转义符

        REPORT ztest_placeholder.
        
        DATA:l_name(8) TYPE c VALUE 'ZhangSan'.
        
        * *号是多位的通配符
        IF l_name CP '*San'.
        WRITE: '*:YES'.
        ELSE.
        WRITE: '*:NO'.
        ENDIF. * +号是一位通配符
        IF l_name CP '+San'.
        WRITE:/ '+:YES'.
        ELSE.
        WRITE:/ '+:NO'.
        ENDIF.

        输出

        *:YES

        +:NO

    2. OPEN SQL where条件中通配符

      • %:多位字符的通配符

      • _:一位字符的通配符

      • ESCAPE:Where条件中转义符

        TABLES:makt.
        SELECT SINGLE *
        FROM makt
        WHERE spras = 1
        AND maktx LIKE '%/_' ESCAPE '/' .
  • CA,CO,CS,CP

  1. CA(Contain Any)

    str1 ca str2 遍历str1,其中的每个字符对应到str2的每个字符,如果对应成功,注意:只要有一个字符成功,就为true.

    str1 = '我a'.
    str2 = 'hubab'.
    str1 ca str2 -true
  2. CO(Contain Only)

    str1 co str2 遍历str1,其中的每个字符对应到str2的每个字符,如果对应成功,注意:str1中的每一個字符成功,就为true.

    可用于判断是否为数字。ca ‘0123456789’

    str1 = '我a'.
    str2 = 'hubab'.
    str1 ca str2 -false str1 = 'ba'.
    str2 = 'hubab'.
    str1 ca str2 -true
  3. CS(Contain String)

    str1 cs str2 str1 是否包含str2。

  4. CP(Contain Pattern)

    加入通配符的匹配

    str1 = 'aac'
    str2 = '#aA#c
    str1 cp str2 -true str1 = 'aAc'
    str2 = '#aA#c'
    str1 cp str2 -true
  5. NOTE

    • CO / CN contains only or not

    • CA / NA contains any or not any

    • CS / NS contain string or not

    • CP / NP contains pattern or not

    • CO, NO, CA, NA比较时区分大小写, 并且尾部空格也在比较的范围之内

    • CS, NS, CP, NP不区分大小写和尾部空格

    • 比较结束后,如果结果为真,sy-fdpos将给出s2在s1中的偏移量信息

    str1 = '123abc123'
    str2 = '*abc*'
    sy-fdpos = 3.
  • 使用正则表达式

    ^表示否定

    FIND FIRST OCCURRENCE OF REGEX '[^a-zA-Z]' IN p_input3.
    IF sy-subrc = 0.
    MESSAGE 'There is some non-letter in your input.' TYPE 'E'.
    ENDIF.

ABAP的匹配的更多相关文章

  1. ABAP中正则表达式的简单使用方法 (转老白BLOG)

    在一个论坛上面看到有人在问正则表达式的问题,特举例简单说明一下.另外,REPLACE也支持REGEX关键字.最后:只能是ECC6或者更高版本才可以(ABAP supports POSIX regula ...

  2. ABAP:SAP报表性能的优化

    大部分ABAPer都是从SAP报表及打印开始学起的,大家也都认为写个SAP报表程序是最简单不过的事了. 但是实际情况真的如此吗?写报表时除了保证数据的准确性,您可曾考虑过报表的性能问题吗? 由于报表程 ...

  3. ABAP 内表 详解

    声明:原创作品,转载时请注明文章来自SAP师太技术博客( 博/客/园www.cnblogs.com):www.cnblogs.com/jiangzhengjun,并以超链接形式标明文章原始出处,否则将 ...

  4. 字符串处理:ABAP中的正则表达式

    声明:原创作品,转载时请注明文章来自SAP师太技术博客( 博/客/园www.cnblogs.com):www.cnblogs.com/jiangzhengjun,并以超链接形式标明文章原始出处,否则将 ...

  5. ABAP Enhancement:第二部分

    声明:原创作品,转载时请注明文章来自SAP师太技术博客( 博/客/园www.cnblogs.com):www.cnblogs.com/jiangzhengjun,并以超链接形式标明文章原始出处,否则将 ...

  6. [SAP ABAP开发技术总结]增强Enhancement

    声明:原创作品,转载时请注明文章来自SAP师太技术博客( 博/客/园www.cnblogs.com):www.cnblogs.com/jiangzhengjun,并以超链接形式标明文章原始出处,否则将 ...

  7. [SAP ABAP开发技术总结]字符串处理函数、正则表达式

    声明:原创作品,转载时请注明文章来自SAP师太技术博客( 博/客/园www.cnblogs.com):www.cnblogs.com/jiangzhengjun,并以超链接形式标明文章原始出处,否则将 ...

  8. SAP ABAP 处理字符串串串串串串串串(详细)

    关于ABAP中处理字符串的方法,非常详细,学习过程中总结一下分享给大家,,, ABAP/4 提供多个处理类型 C 即字符串 的数据对象的关键字. 处理字符串 的方法有: 1.拆分字符串split 2. ...

  9. ABAP程序执行效率和优化 ABAP Performance Examples

    一.             SQL Interface1.         Select ... Where vs. Select + Check用Select … Where语句效率比Select ...

随机推荐

  1. 序列化模块_pickle

    序列化: 把不能够直接存储的数据变成字节流(bytes)保存在文件, 进行持久化存储 反序列化: 任何数据都可以转成字节流(bytes)进行存储: 1. dumps 把任意对象序列化 li = [1, ...

  2. docker swarm 搭建与服务更新

    一,docker swarm 是什么 Docker Swarm.Docker Machine与Docker Compose号称Docker三剑客Docker Swarm 和 Docker Compos ...

  3. 好用的treeGrid

    jquery easyui 官网:http://www.jeasyui.net/plugins/186.html  下面以学校班级情况,先贴出效果图吧! 数据库设计:红色框中为必须要有的列,右边三个为 ...

  4. Linux中docker的使用

    # 列出当前所有正在运行的容器$ docker ps # 列出所有的容器$ docker ps -a # 列出最近一次启动的容器$ docker ps -l # 查看容器的相关信息$ docker i ...

  5. 正确的学python方式

    首先呢,和其他的各种学习都一样,你一定要明白你学习的目标是什么.有的人想要通过学习Python,转行成程序员,实现行业上的转变:有的人希望通过学习Python,在现有的岗位上提升自己:当然也有很多人只 ...

  6. C#压缩文件,C#压缩文件夹,C#获取文件

    using System; using System.Data; using System.Configuration; using System.Collections.Generic; using ...

  7. asp.net 实现后台异步处理的方式

    问题描述: 刚刚开发的一个页面,使用的NET的MVC4.5框架,因为页面数据加载慢需要优化,页面上有8个请求,但是请求并没有什么相互依赖的关系.前端使用ajax异步,但是后台并没有按照异步程序处理.解 ...

  8. 离职有感(CVTE,创业公司,求职...)

    最近几个月,真的各种心酸......体现出来的就是对自己身体的,心里的.......6月底离职以来,一直到现在,经历了两个公司...才这么三个月,就经历了两个公司......我都忍不住怀疑自己,是不是 ...

  9. Toast不消失问题

    在实现一个功能的时候,遇到了Toast一直不消失的问题,因此,对Toast进行了一些研究. 先描述问题:有一个activity和一个thread,都有各自的handler.activity启动thre ...

  10. php laravel+nginx 除了根目录都报404 解决

    在nginx的配置文件加 location / { try_files $uri $uri/ /index.php?$query_string; } 即可!!!!!!!