新人询问如何把string类型数据变成number类型

goryrex 2011-07-12 10:13:07
我想把string类型的数据 10g 变为number类型的,而且我只需要10这个数字,g不需要,请问如何实现,另外10g不是固定这么多位数的,可能是100g,1000g等等,就是说我只需要前面的数字,后面的字符我不需要.
...全文
232 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
zjl8008 2011-07-12
  • 打赏
  • 举报
回复
只适用于整数的,要是有小数就要修改一下
int i
string str_1,str_num=''
dec li
//循环
for i=1 to len(str_1)
if isnumber(mid(str_1,i,1)) =false and mid(str_1,i,1)<>'.' then continue
str_num+=mid(str_1,i,1)
next
//li就是得到的数字
li=dec(str_num)
vippolka 2011-07-12
  • 打赏
  • 举报
回复
1、如果你确认只是最后一位是字母的话而不是会有两位三位的情况出现的话使用:
integer li_get
string ls_s
long ll_len
ll_len = len(ls_s)
li_get = integer( mid(ls_s,1,ll_len-1) )
2、如果最后的字母不确定长度,可以再单独写个function,通过判断字符串每一位是数字还是字母来截取数字段
再来转换即可
zjl8008 2011-07-12
  • 打赏
  • 举报
回复
int i
string str_1,str_num=''
long li
//循环
for i=1 to len(str_1)
if isnumber(mid(str_1,i,1)) =false then continue
str_num+=mid(str_1,i,1)
next
//li就是得到的数字
li=long(str_num)

1,075

社区成员

发帖
与我相关
我的任务
社区描述
PowerBuilder 相关问题讨论
社区管理员
  • 基础类社区
  • WorldMobile
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧