COBOL 字符串处理的方法
发布时间:2023-09-14 13:10:40 所属栏目:教程 来源:
导读:COBOL中的字符串处理语句用于对字符串执行多个功能操作.以下是字符串处理语句 :
Inspect
String
Unstring
Inspect
Inspect verb用于计算或替换字符串中的字符.可以对字母数字,数字或字母值执行字符串操作.检
Inspect
String
Unstring
Inspect
Inspect verb用于计算或替换字符串中的字符.可以对字母数字,数字或字母值执行字符串操作.检
COBOL中的字符串处理语句用于对字符串执行多个功能操作.以下是字符串处理语句 : Inspect String Unstring Inspect Inspect verb用于计算或替换字符串中的字符.可以对字母数字,数字或字母值执行字符串操作.检查操作从左到右执行.用于字符串操作的选项如下 : Tallying Tallying选项用于计算字符串字符. 以下是Tallying选项的语法 : INSPECT input-string TALLYING output-count FOR ALL CHaraCTERS 使用的参数是 : input-string : 要计算其字符的字符串. output-count : 用于保存字符数的数据项. 示例 IDENTIFICATION DIVISION. PROGRAM-ID. HELLO. DATA DIVISION. WORKING-STORAGE SECTION. 01 WS-CNT1 PIC 9(2) VALUE 0. 01 WS-CNT2 PIC 9(2) VALUE 0. 01 WS-STRING PIC X(15) VALUE 'ABCDACDADEAAAFF'. PROCEDURE DIVISION. INSPECT WS-STRING TALLYING WS-CNT1 FOR CHaraCTER. disPLAY "WS-CNT1 : "WS-CNT1. INSPECT WS-STRING TALLYING WS-CNT2 FOR ALL 'A'. disPLAY "WS-CNT2 : "WS-CNT2 STOP RUN. JCL 执行上述COBOL程序. //SAMPLE JOB(TESTJCL,XXXXXX),CLASS = A,MSGCLASS = C //STEP1 EXEC pgm = HELLO 当你编译并执行上面的程序时,它产生以下结果 : WS-CNT1 : 15 WS-CNT2 : 06 更换 更换选项用于替换字符串字符. 语法 以下是替换选项的语法 : INSPECT input-string REPLACING ALL char1 BY char2. 使用的参数是 : 输入字符串 : 字符串将从char1替换为char2的字符串. 示例 IDENTIFICATION DIVISION. PROGRAM-ID. HELLO. DATA DIVISION. WORKING-STORAGE SECTION. 01 WS-STRING PIC X(15) VALUE 'ABCDACDADEAAAFF'. PROCEDURE DIVISION. disPLAY "OLD STRING : "WS-STRING. INSPECT WS-STRING REPLACING ALL 'A' BY 'X'. disPLAY "NEW STRING : "WS-STRING. STOP RUN. JCL 执行上述COBOL程序. //SAMPLE JOB(TESTJCL,XXXXXX),CLASS = A,MSGCLASS = C //STEP1 EXEC pgm = HELLO 当你编译并执行上面的程序时,它产生以下结果 : OLD STRING : ABCDACDADEAAAFF NEW STRING : XBCdxcDXDEXXXFF 字符串 字符串谓词用于连接字符串.使用STRING语句,可以组合两个或多个字符串以形成更长的字符串. 'delimited By'条款是强制性的. 以下是String verb : STRING ws-string1 DELIMITED BY SPACE ws-string2 DELIMITED BY SIZE INTO ws-destination-string WITH POINTER ws-count ON OVERFLOW disPLAY message1 NOT ON OVERFLOW disPLAY message2 END-STRING. 以下是使用参数的详细信息 : ws-string1和ws-string2:要连接的输入字符串 ws-string:输出字符串 ws-count:用于计算新连接字符串的长度 分隔符指定字符串结尾 指针和溢出是可选的 示例 IDENTIFICATION DIVISION. PROGRAM-ID. HELLO. DATA DIVISION. WORKING-STORAGE SECTION. 01 WS-STRING PIC A(30). 01 WS-STR1 PIC A(15) VALUE 'Tutorialspoint'. 01 WS-STR2 PIC A(7) VALUE 'Welcome'. 01 WS-STR3 PIC A(7) VALUE 'To AND'. 01 WS-COUNT PIC 99 VALUE 1. PROCEDURE DIVISION. STRING WS-STR2 DELIMITED BY SIZE WS-STR3 DELIMITED BY SPACE WS-STR1 DELIMITED BY SIZE INTO WS-STRING WITH POINTER WS-COUNT ON OVERFLOW disPLAY 'OVERFLOW!' END-STRING. disPLAY 'WS-STRING : 'WS-STRING. disPLAY 'WS-COUNT : 'WS-COUNT. STOP RUN. JCL 执行上述COBOL程序 : //SAMPLE JOB(TESTJCL,XXXXXX),CLASS = A,MSGCLASS = C //STEP1 EXEC pgm = HELLO 当你编译并执行上面的程序时,它产生以下结果 : WS-STRING : WelcometoTutorialspoint WS-COUNT : 25 Unstring Unstring verb用于将一个字符串拆分为多个子字符串.限定条款是强制性的. 以下是Unstring verb : $的语法b $ b UNSTRING ws-string DELIMITED BY SPACE INTO ws-str1, ws-str2 WITH POINTER ws-count ON OVERFLOW disPLAY message NOT ON OVERFLOW disPLAY message END-UNSTRING. 示例 IDENTIFICATION DIVISION. PROGRAM-ID. HELLO. DATA DIVISION. WORKING-STORAGE SECTION. 01 WS-STRING PIC A(30) VALUE 'WELCOME TO TUTORIALSPOINT'. 01 WS-STR1 PIC A(7). 01 WS-STR2 PIC A(2). 01 WS-STR3 PIC A(15). 01 WS-COUNT PIC 99 VALUE 1. PROCEDURE DIVISION. UNSTRING WS-STRING DELIMITED BY SPACE INTO WS-STR1, WS-STR2, WS-STR3 END-UNSTRING. disPLAY 'WS-STR1 : 'WS-STR1. disPLAY 'WS-STR2 : 'WS-STR2. disPLAY 'WS-STR3 : 'WS-STR3. STOP RUN. JCL 执行上述COBOL程序 : //SAMPLE JOB(TESTJCL,XXXXXX),CLASS = A,MSGCLASS = C //STEP1 EXEC pgm = HELLO 编译并执行上述程序时,会产生以下结果 : WS-STR1 : WELCOME WS-STR2 : TO WS-STR3 : TUTORIALSPOINT (编辑:汽车网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |