字符处理
出处:按学科分类—工业技术 企业管理出版社《工程师手册》第840页(1981字)
1.字符型常量
程序中字符常量用单引号括起来,字符常量中的单引号用两个连续的单引号来表示。
2.字符型量的定义
(1)用CHARACTER语句定义变量和数组
形式一:CHARACTER*lenv1,v2,…
形式二:CHARACTERv1*len1,v2*len2,…
其中len,len1,len2,…是正整数,代表字符长度,v1,v2..·是变量名或数组说明符。以上两种形式可以在同一定义语句中混合使用。长度的缺省值为1。
例如:
CHARACTER*2A,B,C*3,D(5,5)*4
以上定义字符型变量A,B长度为2,C长度为3,字符型数组D中每个元素的长度为4。
(2)用DEMENSION语句和CHARACTER语句定义字符数组
例如:
DIMENSION TAB(10,4)
CHARACTER*6 TAB
或
DIMENSION TAB(0,4)
CHARACTER TAB*6
以上定义TAB数组为字符型,每个数组元素长度为6。
3.子字符串和字符运算
(1)子字符串的表示方法
格式如下:
v(e1∶e2)
其中v是字符变量或数组元素,e1,e2是整型表达式,分别代表子字符串在字符串中的起止位置。起点为1和终点为串长时可省略。假设有:
CHARACTER*26PRC
PRC=′PEOPLE″SREPUBLIC OF CHINA′
则:
PRC(∶6)或PTP(1∶6)代表′PEOPLE′
PRC(10∶17)代表′REPUBLIC′
PRC(22∶)或PRC(22∶26)代表‘CHINA’
(2)字符连接运算
FORTRAN77只提供了一种字符运算符一连接符“//”。格式如下:
chr1//chr2
其中chr1,chr2可以是字符型的常量、变量、数组元素、子字符串及字符函数。运算结果为字符型常数。例如:
CHARACTER A*6,B*10
A=‘ABC’//’DEF”结果‘ABCDEF’A
B=A//A(1∶3)结果‘ABCDEFABC’B
(3)字符串可参与关系运算。
4.字符型数据的输入输出
(1)表控输入输出
字符数据的表控输入输出语句形式与3.2.2中介绍的相同。输入的字符串必须用单引号括起来。
(2)格式输入输出
字符数据的格式输入输出使用A编辑描述符。这时输入的字符串不能用单引号括起来。