ABAP 辨析CO|CN|CA|NA|CS|NS|CP|NP
1、文档说明
本篇文档将通过举例,解析字符的比较运算符之间的用法和区别,涉及到的操作符:CO|CN|CA|NA|CS|NS|CP|NP
2、用法和区别
用法总览
以下举例,几乎都使用一个字符变量和一个硬编码字符进行对比的方式,忽略尾部空格,所以需要注意
凡是比较尾部空格的,需要特别注意变量的长度和字符的长度,考虑尾部空格对结果的影响
2.1、CO仅包含
S1 仅含有 S2中的字符(区分大小写,比较尾部空格)
2.1.1、S1仅有a等于S2中的a,其实还有个尾部空格
去掉尾部空格(尾部空格参与比较的运算符同理)
实际的内容是这样,S1除了a,还包含4个尾部空格,而S2中没有尾部空格,因此结果为FALSE
2.1.2、S1含有S2中没有的c
2.2、CN包含以外
S1包含S2中以外的字符(区分大小写,比较尾部空格)
2.2.1、S1包含S2中没有的c
2.2.2、S1仅有a等于S2中的a,没有其他S2以外的字符
2.3、CA包含任意
S1至少包含S2中的任意一个字符(区分大小写,比较尾部空格)
2.3.1、S1包含S2中的a,其实还有个尾部空格
如果变量直接比较,包含尾部空格,其实是用空格进行了对比,所以任何情况结果都是TRUE
2.3.2、S1没有包含S2中的任何字符
2.4、NA不包含任意
S1不包含S2的任意一个字符(区分大小写,比较尾部空格)
2.5、CS包含字符串
S1包含S2整个字符串
2.6、NS不包含字符串
S1不包含S2整个字符串
2.7、CP符合模式
S1符合S2的模式
此处使用"*"和"+"作为通配符
"*"匹配"字符串"
"+"匹配"字符"
如果需要区分大小写,需要匹配*和+字符,需要匹配空格,则需要通过#号进行转义
大小写要求:#B #c
匹配*或+
匹配空格
2.8、NP不符合模式
S1不符合S2的模式
3、特殊情况
除了以上要注意区分大小写和字符尾部空格外,还需要注意变量类型
例如:CO中,如果S2 type string类型,且为初始值,S1无论何值,结果都是FALSE
如果 S1 type string类型,且为初始值,S2无论何值,结果都是TRUE
再例如:CA中,S1或S2为string类型,且为初始值,则结果都是FALSE
ABAP 辨析CO|CN|CA|NA|CS|NS|CP|NP的更多相关文章
- ABAP CA CO CS CP 等操作符
DATA: L_STR1 TYPE STRING, L_STR2 TYPE STRING. L_STR1 = 'ca'. "匹配字符 L_STR2 = 'hubab'. "被匹配字 ...
- SAP ABAP 处理字符串串串串串串串串(详细)
关于ABAP中处理字符串的方法,非常详细,学习过程中总结一下分享给大家,,, ABAP/4 提供多个处理类型 C 即字符串 的数据对象的关键字. 处理字符串 的方法有: 1.拆分字符串split 2. ...
- ABAP的匹配
ABAP的匹配 通配符 字符串操作中的通配符 *:多位字符的通配符 +:一位字符的通配符 #:字符操作中的转义符 REPORT ztest_placeholder. DATA:l_name(8) TY ...
- 【ABAP系列】SAP ABAP-模块 字符串操作基础知识
公众号:SAP Technical 本文作者:matinal 原文出处:http://www.cnblogs.com/SAPmatinal/ 原文链接:[ABAP系列]SAP ABAP-模块 字符串操 ...
- 【protobuf进阶】通过.proto文件导出C#支持的.cs类文件
protobuf是一个跨平台的消息交互协议,类似xml.json等. protocolbuffer(以下简称PB)是google 的一种数据交换的格式,它独立于语言,独立于平台.google 提供了多 ...
- 搭建私有CA服务器
1 CA是什么 CA(Certificate Authority)证书颁发机构主要负责证书的颁发.管理以及归档和吊销.证书内包含了拥有证书者的姓名.地址.电子邮件帐号.公钥.证书有效期.发放证书的CA ...
- apache配置CA证书通过https通信
Apache Httpd 2.2 实现https加密通讯 实际生产中CA证书一般是向一些专业认证的国际机构来进行申请的.我们会模拟使用OpenSSL生成的证书,来实现Apache的安全加密通讯,这与实 ...
- 使用openssl模拟CA和CA证书的签发
使用openssl模拟CA和CA证书的签发 当使用ssl/tls进行加密通信时,必须要有数字证书.若通信只限制在局域网内,可以不向第三方机构申请签发证书,可以通过openssl模拟CA(Cer ...
- Openssl自建CA
查看证书相关指令 # 查看公钥数字证书 openssl x509 -in cacert.pem -noout -text # 查看私钥数字证书 openssl pkcs12 -in client-ce ...
- 信安实践——自建CA证书搭建https服务器
1.理论知识 https简介 HTTPS(全称:Hyper Text Transfer Protocol over Secure Socket Layer),是以安全为目标的HTTP通道,简单讲是HT ...
随机推荐
- py周结04
py周结04 异常类型,理语法结构及实践案例 1.异常类型 SyntaxError 语法错误 NameError 名字错误 IndexError 指数错误 KeyError 关键字错误 Indenta ...
- 微信小程序实战,基于vue2实现瀑布流
1.什么是瀑布流呢? 瀑布流,又称瀑布流式布局.是比较流行的一种网站页面布局,视觉表现为参差不齐的多栏布局,随着页面滚动条向下滚动,这种布局还会不断加载数据块并附加至当前尾部. 瀑布流对于图片的展现, ...
- nginx-1.22.0版本安装
nginx运行状态查看 查看80端口占用情况:netstat -tunlp | grep 80 # 查看进程是否运行ps -A | grep nginx # 强制关闭nginxpkill nginx ...
- 2A锂电池充电管理IC,具有恒压/恒流充电模式
PW4052 是一颗适用于单节锂电池的.具有恒压/恒流充电模式的充电管理 IC.该芯片采用开关型的工作模 式, 能够为单节锂电池提供快速. 高效且简单的充电管理解决方案. PW4052 采用三段式充电 ...
- CountDownLatch闭锁源码解析(基于jdk11)
目录 CountDownLatch闭锁源码解析(基于jdk11) 1.1 CountDownLatch概述 1.2 CountDownLatch原理 1.2.1 基本结构(jdk11) 1.2.2 a ...
- 互斥锁 线程理论 GIL全局解释器锁 死锁现象 信号量 event事件 进程池与线程池 协程实现并发
目录 互斥锁 multiprocessing Lock类 锁的种类 线程理论 进程和线程对比 开线程的两种方式(类似进程) 方式1 使用Thread()创建线程对象 方式2 重写Thread类run方 ...
- c++11 线程池--鸿蒙OS
一个你应该学习的线程池 说明 原理:线程+优先级队列.源码没有涉及STL,没有复杂高深的语法,安全性做得很好: queue的安全使用方式top和pop以及empty的判断都是使用了 std::lock ...
- Ubuntu 22.04 LTS 安装 0.A.D 实时策略游戏 并汉化
众所周知,Linux生态中,能玩的正儿八经的大型游戏其实没几个,而 0.A.D 这个游戏就是这其中之一.这是一个类似于帝国时代的实时策略游戏,开源跨平台,这是其官方网站:https://play0ad ...
- Jenkins&&gitlab2
Jenkins slave 添加jenkins slave节点: jenkins slave节点创建工作目录与基本环境配置,如果jenkins slave节点需要clone代码和执行java 代码编 ...
- gitlab修改代码提交后显示中文名称
公司要求提交的代码能显示出是哪位提交的,所以要求显示中文名称以便统计工作 修改方法: 打开CMD命令提示符输入页面,输入修改指令: git config --global user.name &quo ...