早教吧 育儿知识 作业答案 考试题库 百科 知识分享

已知s='(XYZ)+',t='(X+Z)*Y',利用联接,求子串和转换等基本运算,将s转化为t

题目详情
已知s='(XYZ)+',t='(X+Z)*Y',利用联接,求子串和转换等基本运算,将s转化为t
▼优质解答
答案和解析
【答案】本题有多种解法,下面是其中的一种:
(1) s1=substr(s,3,1) /*取出子串:"y"
(2) s2=substr(s,6,1) /*取出子串:"+"
(3) s3=substr(s,1,5) /*取出子串:" (xyz) "
(4) s4=substr(s,7,1) /*取出子串:"*"
(5) s5=replace(s3,3,1,s2)/*形成部分串:" (x+z) "
(6) s=s5/*s4/*s1 /*形成串t即" (x+z)*y"
【解析】题中所给操作的含义如下:
/*:连接函数,将两个串连接成一个串
substr(s,i,j):取子串函数,从串s的第i个字符开始,取连续j个字符形成子串
replace(s1,i,j,s2):置换函数,用s2串替换s1串中从第i个字符开始的连续j个字符