字符串操作
生成空字符串 blstr(n) n=空字符串数量
istr() $$ 将整型转化为字型
fstr() $$ 将浮点型转化为字型
valf() $$ 字符串,返回实数
intf() $$ 字符串,返回整数
chrstr(n) 转换ascii码 数字转字母
ascii('string',n) 转换ascii码 字母转数字
lenf() $$ 字符串长度
一、提取字符串
ans=substr('123456',1,3)
列
string/ans(100),exp1(100)
exp1='m123456'
ans=substr(exp1,lenf(exp1),1)
print/ans
halt
二、替换字符串
pos=1
ans=repstr('127856','78','34',pos)
结果ans=123456
pos 开始位置,从这里开始
三、比较字符串
ans=cmpstr(d20,d19) 返回ans=1
ans=cmpstr(d9,dd) 返回ans=-1
ans=cmpstr(abc,abc) 返回ans=0
四、搜索字符串
string/str(15)
str='1234567890123456789'
ans=fndstr(str,'8',1) 返回ans=8
ans=fndstr(str,'8',9) 返回ans=18
因为第二次搜索字符串位置是从 第8个字符串开始搜索
——————————————————————————————
字符串操作 - 隔符取值
$$ 隔符取值
gripsw / declrv $$ 表示变量必须定义不然无法编译
number / a(6),i,c,d,num(6)
string / str(132),aa(6,22)
&decpl=4 $$ 设置当前小数位数
str='1.0梅雷,梅2.0,3.雷0,梅雷4.0梅雷,5.0,6.0'
a(1)=0
do/loo:,i,1,5
c=a(i)+1
a(i+1)=fndstr(str,',',c)
d=a(i+1)-c
aa(i)=substr(str,c,d)
num(i)=valf(aa(i)) $$ 字符串,返回实数
loo:
aa(6)=substr(str,a(6)+1,lenf(str)-a(6)-2)
num(6)=valf(aa(6)) $$ 字符串,返回实数
print/str
do/lo:,i,1,6
print/''
print/'显示字符串'
print/aa(i)
print/'只显示数字'
print/num(i)
lo:
print/''
print/'字符串在数字前则默认为零'
end:
halt
$$ 显示结果如下:
$$ 1.0梅雷,梅2.0,3.雷0,梅雷4.0梅雷,5.0,6.0
$$ 显示字符串
$$ 1.0梅雷
$$ 只显示数字
$$ 1.0000
$$ 显示字符串
$$ 梅2.0
$$ 只显示数字
$$ .0000
$$ 显示字符串
$$ 3.雷0
$$ 只显示数字
$$ 3.0000
$$ 显示字符串
$$ 梅雷4.0梅雷
$$ 只显示数字
$$ .0000
$$ 显示字符串
$$ 5.0
$$ 只显示数字
$$ 5.0000
$$ 显示字符串
$$ 6
$$ 只显示数字
$$ 6.0000
$$ 字符串在数字前则默认为零
_____________________________________________________________________________ _
中磊UG二次开发教程 梅雷著 qq1821117007
学UG就上UG网 http://www.9sug.com/
|