| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1414 人关注过本帖
标题:一个很难的循环问题![已经写出来了,感谢各位大侠](源码已贴出)【注释已 ...
只看楼主 加入收藏
nvzhanshi
Rank: 2
等 级:论坛游民
帖 子:54
专家分:47
注 册:2010-11-28
收藏
得分:0 
感谢gupiao175的精彩回复,刚才我自己也写了一段,请按我的思路看一下!中间又出现了问题,请帮忙想想怎么解决!
一下只有找出第几位是字母和重新组合(这里有问题)的代码。


以下是部分参数和笔记=====================================================
起码:123W7   止码:124W1     起:1W3Q7   止1W4Q1    起:1WQ12  起:W12Q3
a=(1,2,3,W,7)   b=(1,2,4,W,1)   c=( , , ,W, )      aa=1237  bb=1241  
=========================================================================
  
以下是代码部分===========================================================
<%
a=123W7
b=124W1
a(0)=mid(a,1,1)
a(1)=mid(a,2,1)
a(2)=mid(a,3,1)
a(3)=mid(a,4,1)
a(4)=mid(a,5,1)
b(0)=mid(b,1,1)
b(1)=mid(b,2,1)
b(2)=mid(b,3,1)
b(3)=mid(b,4,1)
b(4)=mid(b,5,1)
x=0

for i=0 to 4
if IsNumeric(a(i)) then    '如果a(i)是数字,这个函数不会用,不知道是不是这样写!不过就这个意思!
else
 if x=1 then
    d=a(i)
    di=i+1
    x=x+1
 else
    c=a(i)
    ci=i+1
    x=x+1
 end if
end if

if x=1 then
aa=left(a,ci-1)&right(a,5-ci)
bb=left(b,ci-1)&right(b,5-ci)
end if

----------------------------------------------------未完成部分
if x=2 then
aa=left(a,ci-1)&mid(a,ci+1,d1-c1-1)&right(a,5-ci)
bb=left(b,ci-1)&right(b,5-ci)
end if
next
----------------------------------------------------未完成部分

%>
===================================================================
问题:
单横线中间的部分,是重组带有2个字母的数据的代码,我想了很久,没有想出怎么写来,请大侠赐教!

另外,中间也能有语法错误,不过意思就是这样的,大侠先凑合看,帮我看看这个思路能不能行!

[ 本帖最后由 nvzhanshi 于 2010-11-29 19:28 编辑 ]
2010-11-29 19:27
gupiao175
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:版主
威 望:40
帖 子:1787
专家分:7527
注 册:2007-6-27
收藏
得分:0 
我想问问你要输入的车牌号里都是固定用字母WQ吗?我感觉你现在思路越走越偏了。搞不懂你到底想实现什么功能!

Q:1428196631,百度:开发地 即可找到我,有事请留言!
2010-11-29 23:23
gupiao175
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:版主
威 望:40
帖 子:1787
专家分:7527
注 册:2007-6-27
收藏
得分:0 
你的这种录入我感觉不实际.即使技术上能做到,但是实际的车牌号即使扣除字母部分,其他数字部分怎么可能那么有规律的由小到大的排列呢??

Q:1428196631,百度:开发地 即可找到我,有事请留言!
2010-11-29 23:25
gupiao175
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:版主
威 望:40
帖 子:1787
专家分:7527
注 册:2007-6-27
收藏
得分:0 
<%
   str="3Q7T8,3Q7T9,3Q8T0" '车牌数据
    Set Reg = New RegExp
    Reg.Global     = True
    Reg.Pattern    = "[A-Za-z]" '字母正则
    Reg.IgnoreCase = False
    str2=Reg.replace(str,"")
    response.write str2&"<br>"   '输出378,379,380等,这里之后紧跟纯数字的循环操作!

    arr=Split(str2,",")
    Function fen(s)
        d=""
        For j=0 To ubound(s)
          a=Mid(s(j),1,1)
          b=Mid(s(j),2,1)
          c=Mid(s(j),3,1)
          If j<UBound(s) then
          d=d&a&"Q"&b&"T"&c&","
          Else
           d=d&a&"Q"&b&"T"&c
          End if
        Next
        fen=d
     End Function
     response.write fen(arr)   '输出组合后的3Q7T8,3Q7T9,3Q8T0等,然后录入数据库!
     
%>

对于这样一组代码,你看到什么没有,位置是固定的很容易进行修改!但是对于位置不固定的,那修改起来就非常麻烦了!
需要考虑的因素太多了。如果我来操作的话至少要写几十行的代码来判断过滤.

Q:1428196631,百度:开发地 即可找到我,有事请留言!
2010-11-30 00:01
hams
Rank: 12Rank: 12Rank: 12
等 级:贵宾
威 望:18
帖 子:912
专家分:3670
注 册:2008-7-30
收藏
得分:0 
以下是引用nvzhanshi在2010-11-29 18:31:12的发言:

大侠给出的这段是说我知道第几位是字母,才能和样写。并且要知道字母是什么。
但是对于怎么在变量中把字母分离出来,我想的方法很麻烦。大侠可否帮忙给出一段分离字母和判断字母的代码?

例子:i1=123W7 i2=124W1
关键是你自己没有明确规律是什么,字母参不参与循环。

俺不高手,俺也是来学习的。
俺的意见不一定就对,当你不认同时请点忽视按钮。
当走到十字路口不知该如何走时,可在论坛问下路,但你若希望别人能一路把你送到目的地,显然是不现实的,因为别人也有自己要走的路。
2010-11-30 07:59
nvzhanshi
Rank: 2
等 级:论坛游民
帖 子:54
专家分:47
注 册:2010-11-28
收藏
得分:0 
以下是引用hams在2010-11-30 07:59:38的发言:

关键是你自己没有明确规律是什么,字母参不参与循环。
字母不参与循环,而且车牌中的字母不只是W或Q,26个字母好像都有吧!
2010-11-30 09:18
nvzhanshi
Rank: 2
等 级:论坛游民
帖 子:54
专家分:47
注 册:2010-11-28
收藏
得分:0 
以下是引用gupiao175在2010-11-29 23:25:29的发言:

你的这种录入我感觉不实际.即使技术上能做到,但是实际的车牌号即使扣除字母部分,其他数字部分怎么可能那么有规律的由小到大的排列呢??
字母是26个字母中的任何一个,大侠可以试想一下你在路上看到的车牌!对于数字,去掉字母的起码肯定比去掉字母的止码要小,这是肯定的!不然也没法批量录入!
2010-11-30 09:20
jansonwang
Rank: 3Rank: 3
等 级:论坛游侠
威 望:1
帖 子:60
专家分:147
注 册:2010-11-25
收藏
得分:5 
随机从数字0-9 字母A-Z中选择字符组合成5位字符,然后入库,每次入库都判断一下本次入库的号码是否在库中存在,如果存在则重新随机生成一个,这样一直循环。直到最后的记录数等于理论上的全部记录数。
2010-11-30 09:22
nvzhanshi
Rank: 2
等 级:论坛游民
帖 子:54
专家分:47
注 册:2010-11-28
收藏
得分:0 
以下是引用gupiao175在2010-11-30 00:01:30的发言:



对于这样一组代码,你看到什么没有,位置是固定的很容易进行修改!但是对于位置不固定的,那修改起来就非常麻烦了!
需要考虑的因素太多了。如果我来操作的话至少要写几十行的代码来判断过滤.
就是因为字母位置不固定,所以上面我写了那么多,主要是用于判断字母,进行数字重组,然后在循环中,从相应的位置插入字母,然后将变量存入数据库!

大侠不要考虑固定字母了,那个东西在现实的车牌录入中是不可能的。
帮忙想一下这个随机位置是字母的车牌吧。

并且一个车牌中最多只有2个字母,比如:鲁A12C5T,其中黑A是指的归属地,这个我们不考虑,因为所有车牌都是的归属地都一样,我们只要考虑12C5T就行了!
2010-11-30 09:25
nvzhanshi
Rank: 2
等 级:论坛游民
帖 子:54
专家分:47
注 册:2010-11-28
收藏
得分:0 
以下是引用jansonwang在2010-11-30 09:22:33的发言:

随机从数字0-9 字母A-Z中选择字符组合成5位字符,然后入库,每次入库都判断一下本次入库的号码是否在库中存在,如果存在则重新随机生成一个,这样一直循环。直到最后的记录数等于理论上的全部记录数。
没有理解大侠的意思!
2010-11-30 09:40
快速回复:一个很难的循环问题![已经写出来了,感谢各位大侠](源码已贴出)【注 ...
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.018994 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved