一个判断数字的问题

bbbhast 2008-03-23 02:45:52
怎样判断一个数字前面是否有0

比如说,我在一变量中输入一组数字,
第一位如果是非零整数,则输出T
第一位如果是0,则输出F,
并且把前面的0全部去掉后输出!!
...全文
45 点赞 收藏 10
写回复
10 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
呵呵
回复
苍白之月 2008-03-23
有那么费劲吗
回复
myvicy 2008-03-23
呵呵,6楼的不错.
回复
Crossmaya 2008-03-23
楼上的 我他妈太崇拜你了!!!
回复
Dogfish 2008-03-23
如果只是整数,可以这样写,可以省点资源

<%
s="00001234"
if left(s,1)="0" then
response.write "F<br>"
response.write cint(s)
else
response.write "T"
end if
%>



如果只含小数点,可以这样写

<%
s="00001234.561"
if left(s,1)="0" then
response.write "F<br>"
s_a = Split(s, ".")
response.write CStr(cint(s_a(0))) & "." & s_a(1)
else
response.write "T"
end if
%>


如果不知道是否只是整数,可以这样写

<%
s="00001234"
if left(s,1)="0" then
response.write "F<br>"
s_a = Split(s, ".")
response.write CStr(cint(s_a(0)))
If UBound(s_a) >0 Then
response.write "." & s_a(1)
End If
else
response.write "T"
end if
%>
回复
ymle1228 2008-03-23
用left(a,b)和replace!
回复
1、Len函数示例:

下面的示例利用 Len 函数返回字符串中的字符数目:

Dim MyString
MyString = Len("VBSCRIPT") 'MyString 包含 8。


2、Trim、Ltrim、Rtrim函数示例:

下面的示例利用 LTrim, RTrim, 和 Trim 函数分别用来除去字符串开始的空格、尾部空格、 开始和尾部空格:

Dim MyVar
MyVar = LTrim(" vbscript ") 'MyVar 包含 "vbscript "。
MyVar = RTrim(" vbscript ") 'MyVar 包含 " vbscript"。
MyVar = Trim(" vbscript ") 'MyVar 包含"vbscript"。
3、Mid函数示例:

下面的示例利用 Mid 函数返回字符串中从第四个字符开始的六个字符:

Dim MyVar
MyVar = Mid("VB脚本is fun!", 4, 6) 'MyVar 包含 "Script"。
4、Left函数示例:

下面的示例利用Left 函数返回MyString 的左边三个字母:

Dim MyString, LeftString
MyString = "VBSCript"
LeftString = Left(MyString, 3) 'LeftString 包含 "VBS
5、Right函数示例:

下面的示例利用 Right 函数从字符串右边返回指定数目的字符:

Dim AnyString, MyStr
AnyString = "Hello World" '定义字符串。
MyStr = Right(AnyString, 1) '返回 "d"。
MyStr = Right(AnyString, 6) ' 返回 " World"。
MyStr = Right(AnyString, 20) ' 返回 "Hello World"。


6、LCase函数示例:

下面的示例利用 LCase 函数把大写字母转换为小写字母:

Dim MyString
Dim LCaseString
MyString = "VBSCript"
LCaseString = LCase(MyString) ' LCaseString 包含 "vbscript"。


7、 UCase函数示例:


下面的示例利用 UCase 函数返回字符串的大写形式:

Dim MyWord
MyWord = UCase("Hello World") ' 返回"HELLO WORLD"。
8、StrComp函数示例:

下面的示例利用 StrComp 函数返回字符串比较的结果。如果第三个参数为 1 执行文本比较;如果第三个参数为 0 或者省略执行二进制比较。

Dim MyStr1, MyStr2, MyComp
MyStr1 = "ABCD": MyStr2 = "abcd" '定义变量。
MyComp = StrComp(MyStr1, MyStr2, 1) ' 返回 0。
MyComp = StrComp(MyStr1, MyStr2, 0) ' 返回 -1。
MyComp = StrComp(MyStr2, MyStr1) ' 返回 1。
9、InStr示例:

下面的示例利用 InStr 搜索字符串:

Dim SearchString, SearchChar, MyPos
SearchString ="XXpXXpXXPXXP"???
SearchChar = "P"??
MyPos = Instr(SearchString, SearchChar)???'返回 9.
注意:返回的不是一个字符串在另一个字符串中第一次出现的字符位置,而是字节位置。
10、Split函数示例:

Dim MyString, MyArray, Msg
MyString = "VBScriptXisXfun!"
MyArray = Split(MyString, "x",-1,1)
' MyArray(0) contains "VBScript".
' MyArray(1) contains "is".
' MyArray(2) contains "fun!".
Response.Write(MyArray(0))

11、Replace函数示例:

Replace("ABCD", "BC", "12") '得到A12D
回复
使用正则或者使用ASP函数left
来实现
要去掉所有的0,那么请用replace函数
回复
liuyann 2008-03-23

dim s
s="01234"
if left(s,1)="0" then
response.write "F"
response.write val(s)
else
response.write "T"
end if

== 思想重于技巧 ==
回复
Atai-Lu 2008-03-23
用正则
^0\d$
回复
相关推荐
发帖
ASP
创建于2007-09-28

2.8w+

社区成员

ASP即Active Server Pages,是Microsoft公司开发的服务器端脚本环境。
申请成为版主
帖子事件
创建了帖子
2008-03-23 02:45
社区公告
暂无公告