字符运算符
CO:仅包含
CN:不仅包含
CA:包含任何
NA:不包含任何
CS:包含字符串
NS:不包含字符串
CP:包含模式
NP:不包含模式
*CO 仅包含
"如果<f1>仅包含<f2>中的字符,则逻辑表达式<f1> CO <f2>为真,该比较区分大小写并包含空格
"如果比较结果为真,则系统字段SY-FDPOS为<f1>的长度,如果比较结果为假,则系统字段SY-FDPOS为<f1>中第一个在<f2>内出现字符的偏移量
IF 'AB C' CO 'ABCD '.
WRITE: / 'CO:T', 'POS:', sy-fdpos.
ELSE.
WRITE: / 'CO:F', 'POS:', sy-fdpos.
ENDIF.
*CN 不仅包含
"如果<f1>还包含<f2>之外的其他字符,则逻辑表达式<f1> CN <f2>为真,该比较区分大小写并包含空格
"如果比较结果为真,则系统字段SY-FDPOS为<f1>中第一个未在<f2>中出现的字符偏移量,如果比较结果为假,则系统字段SY-FDPOS为<f1>的长度
IF 'AB1' CN 'ABCD '.
WRITE: / 'CN:T', 'POS:', sy-fdpos.
ELSE.
WRITE: / 'CN:F', 'POS:', sy-fdpos.
ENDIF.
*CA 包含任何
"如果<f1>至少包含<f2>中的一个字符,则逻辑表达式<f1> CA <f2>为真,该比较区分大小写并包含空格
"如果比较结果为真,则系统字段SY-FDPOS为<f1>中第一个在<f2>中出现的字符偏移量,如果比较结果为假,则系统字段SY-FDPOS为<f1>的长度
IF 'aB ' CA 'ABCD '.
WRITE: / 'CA:T', 'POS:', sy-fdpos.
ELSE.
WRITE: / 'CA:F', 'POS:', sy-fdpos.
ENDIF.
*NA 不包含任何
"如果<f1>不包含<f2>中的字符,则逻辑表达式<f1> NA <f2>为真,该比较区分大小写并包含空格
"如果比较结果为真,则系统字段SY-FDPOS为<f1>的长度,如果比较结果为假,则系统字段SY-FDPOS为<f1>中第一个在<f2>内出现字符的偏移量
IF 'abcd ' NA 'ABCD '.
WRITE: / 'NA:T', 'POS:', sy-fdpos.
ELSE.
WRITE: / 'NA:F', 'POS:', sy-fdpos.
ENDIF.
*CS 包含字符串
"如果<f1>包含字符串<f2>,则逻辑表达式<f1> CS <f2>为真,该比较不区分大小写忽略尾部空格
"如果比较结果为真,则系统字段SY-FDPOS为<f2>在<f1>中出现的字符偏移量,如果比较结果为假,则系统字段SY-FDPOS为<f1>的长度
IF 'ABCD' CS 'ab '.
WRITE: / 'CS:T', 'POS:', sy-fdpos.
ELSE.
WRITE: / 'CS:F', 'POS:', sy-fdpos.
ENDIF.
*NS 不包含字符串
"如果<f1>不包含字符串<f2>,则逻辑表达式<f1> NS <f2>为真,该比较不区分大小写忽略尾部空格
"如果比较结果为真,则系统字段SY-FDPOS为<f1>的长度,如果比较结果为假,则系统字段SY-FDPOS为<f2>在<f1>中出现字符的偏移量
IF 'ABC' NS 'ABCD '.
WRITE: / 'NS:T', 'POS:', sy-fdpos.
ELSE.
WRITE: / 'NS:F', 'POS:', sy-fdpos.
ENDIF.
*CP 包含模式
"如果<f1>包含模式<f2>,则逻辑表达式<f1> CP <f2>为真,该比较不区分大小写忽略尾部空格
"如果<f2>属于类型C,则可以在<f2>中使用下列通配符:
"*用于任何字符串
"+用于任何单字符串
"如果要对<f2>中的特殊字符进行比较,请将换码字符#放到其前面
"大小写字符
"通配符* (#*)
"通配符+ (#+)
"换码符本身# (##)
"字符串结尾的空格 (# )
"如果比较结果为真,则系统字段SY-FDPOS为<f2>在<f1>中的偏移量,如果比较结果为假,则系统字段SY-FDPOS为<f1>的长度
IF 'AB # CD' CP '*##* '.
WRITE: / 'CP:T', 'POS:', sy-fdpos.
ELSE.
WRITE: / 'CP:F', 'POS:', sy-fdpos.
ENDIF.
*NP 不包含模式
"如果<f1>不包含模式<f2>,则逻辑表达式<f1> NP <f2>为真,该比较不区分大小写忽略尾部空格
"可以使用与CP相同的通配符和转换字符
"如果比较结果为真,则系统字段SY-FDPOS为<f1>的长度,如果比较结果为假,则系统字段SY-FDPOS为<f2>在<f1>中的偏移量
IF 'AB # CD' NP 'CD'.
WRITE: / 'NP:T', 'POS:', sy-fdpos.
ELSE.
WRITE: / 'NP:F', 'POS:', sy-fdpos.
ENDIF.