判断后取数字(在线着急等)

put2001_ruan 2003-05-11 09:51:53
比如我有字符串:“dld¥334”
我要取出在字符"¥"后数字,怎么个取法,当然在"¥ "字符前面的字符是不确定的。
谢谢帮忙
...全文
73 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
AndyYong 2003-05-11
  • 打赏
  • 举报
回复
變量說明:
-----------------------------------
str1: 存放預設字符串
str2: 存放"¥"字符
str3: 存放結果
s1 : 存放"¥"字符所在str1中的位置
-----------------------------------

Dim str1,str2,str3 as string
Dim s1 as int

str1="dld¥334"
str2="¥"

s1=instr(1,str2,str1) '找出¥所在str1中的位置,暫存于s1
str3=mid(str1,s1+1,len(str1)) '截取str1中¥后面的字符存放于str3

希望能幫到你.
自由之眼 2003-05-11
  • 打赏
  • 举报
回复
建议你直接将它封装成一个函数,便于操作。
public function Convert(byval a as string) as string

'dim a as string '你要转换的字符
dim b as string
dim iLen as integer
'a="dld¥334"
b=""
iLen = instr(a,"¥")
if iLen >0 then
b=right(a,len(a)-iLen)
else
magbox "没有找到钱数。","提示信息"
end if
convert=b
end function
tshow 2003-05-11
  • 打赏
  • 举报
回复
for i=1 to len("dld¥334")
if mid("dld¥334",i,1)=“¥” then strnew=right("dld¥334",len(“dld¥334”)-i)
next i
基本就是这个意思啊,你看msdn中的mid用法,自己琢磨一下
czjw 2003-05-11
  • 打赏
  • 举报
回复
uStr = "dld¥334"
Num = Mid(uStr, InStr(uStr, "¥") + 1)
Debug.Print Num
自由之眼 2003-05-11
  • 打赏
  • 举报
回复
哦,写错了,sorry
应该把b=left(a,iLen)
改成b=right(a,len(a)-iLen)
试试
put2001_ruan 2003-05-11
  • 打赏
  • 举报
回复
有没有再简单一点算法了啊?
自由之眼 2003-05-11
  • 打赏
  • 举报
回复
使用instr函数,写了一个大概,你试试。
例如:
dim a as string
dim b as string
dim iLen as integer
a="dld¥334"
iLen = instr(a,"¥")
if iLen >0 then
b=left(a,iLen)
else
magbox "没有找到钱数。","提示信息"
end if

7,763

社区成员

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

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