这个规则怎么判断??

PPLUNCLE 2003-09-27 10:24:10
我做的一个表框提交页面,我要求别人在"编号",这一项中输入的必须是:jzbh00*形式
后面"*"是数字
我怎么在服务器端判断客户端输入的是这么一个形式?
...全文
38 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
lovehwq21 2003-09-27
  • 打赏
  • 举报
回复
用函数left(string,6)取得前六个字符看是否是jzbh00,写个循环,逐个检查后面的数是否是“0123456789”里面的数字之一
Dim sTemp, sNumber
sTemp = "jzbh00**"
sNumber = "0123456789"
If Len(sTemp) >=7 Then
for i = 7 to Len(sTemp)
If InStr(sNumber,Mid(sTemp,i,1)) = 0 Then
Msgbox "格式不对!"
   Exit For
End If
next
End If

具体的算法还要自已补充上去,如果用IsNumber()判断,则对全角数字判断不了。
chinanetspy 2003-09-27
  • 打赏
  • 举报
回复
Dim MyString, LeftString(客户输入的)
MyString = "jzbh00"
if LeftString = Left(MyString, 6) then
response.write "正确"
else
response.write"错误"

-----------------------------------------------------

Left(b,a)函数可以取出b字符串从左开始的a个字符
skangming 2003-09-27
  • 打赏
  • 举报
回复
对,用left()查前六位,再处理第7位
liudong963 2003-09-27
  • 打赏
  • 举报
回复
使用正则表达式:
Dim Re
Set Re = New RegExp ' 建立正则表达式。
Re.Pattern = "^jzbh00[\d]*$" ' 设置匹配模式。
Re.IgnoreCase = false ' 设置是否区分字符大小写。
Re.Global = True


If Re.Test(Request("编号"))=true Then
'输入正确处理
Else
'输入错误处理
End If
云帆 2003-09-27
  • 打赏
  • 举报
回复
用函数left(string,6)取得前六个字符看是否是jzbh00,然后用mid(string,7)取得从第七个字符开始的所有字符,然后用Isnumeric()函数判断是否是数字
purexu 2003-09-27
  • 打赏
  • 举报
回复
用正则
Function Chack(sStr)
Chack = False
If sStr = "" Then Exit Function
Dim oRE
Set oRE = New RegExp
oRE.IgnoreCase = True
oRE.Global = True
oRE.Pattern = "^jzhb00[\d]+$"
IsInteger = oRE.Test(sStr)
Set oRE = Nothing
End Function
Lincon 2003-09-27
  • 打赏
  • 举报
回复
用left函数取得用户输入的前六位是jzbh00,再判断它后面的是不是数字。

28,390

社区成员

发帖
与我相关
我的任务
社区描述
ASP即Active Server Pages,是Microsoft公司开发的服务器端脚本环境。
社区管理员
  • ASP
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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