首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网站开发 > ASP >

区分数据提交到相应字段解决方法

2013-01-26 
区分数据提交到相应字段姓名:张三年龄:20住址:北京市东区个人主页:http://www.csdn.net将个人信息提交到数

区分数据提交到相应字段
姓名:张三
年龄:20
住址:北京市东区
个人主页:http://www.csdn.net



将个人信息提交到数据库,目前的功能是按这种标准格式提交4条数据,录入到相应字段里去
但是有些人提交的格式可能有出入,
比如冒号他用的是全角 或个人主页写的个人网址,年龄写的年纪
还有就是4条记录的顺序不一致
导致现有的程序无法识别。
有没有好的办法能准确识别区分后提交到数据库呢?


求大神现身帮助,给出思路和代码,谢谢
[解决办法]
定义2个数组,一个数组用于存储数据库字段名称,另外一个对应的数组项上存储正则表达式的内容,将可能的前缀或者分隔符号加上,用正则来提取内容

s="年龄:20"&chr(10)&_
"住址:北京市东区"&chr(10)&_
"姓名:张三"&chr(10)&_
"个人主页:http://www.csdn.net"

arrfield=array("name","age","addr","site")
arrrx=array("^(姓名
[解决办法]
名字)[::]([^\r\n]+)","^(年龄
[解决办法]
年纪
[解决办法]
岁数)[::]([^\r\n]+)","^(地址
[解决办法]
住址)[::]([^\r\n]+)","^(个人主页
[解决办法]
网址)[::]([^\r\n]+)")
set rx=new regexp
rx.Multiline=true
rx.Global=true
for i=0 to ubound(arrfield)
  rx.Pattern=arrrx(i)
  set mc=rx.Execute(s)
  if mc.count>0 then
     set m=mc(0)
    msgbox  arrfield(i)&":"&m.submatches(1)
  else
    msgbox "找不到和“"&arrfield(i)&"”匹配的内容"
  end if
next

set rx=nothing


或者客户端验证客户提交的数据,不正确不允许提交

热点排行