WEB相談室

Webページ作成に関しての何でも掲示板です。

タイトル:VBSの配列について

0:[投稿] ASP [MAIL] [2002/04/17 21:33 ][環境:WIN+IE 不明]

いつもお世話になっています。

VBSにて、ASPの作成をしているのですが、ちとわかりません。たびたびすみません。

***********
234,324,345-6
上記の数値を、Response.formで取得して、配列を作成したいのです。

No(100) = ("234","324","345")
Dai(100) = ("0","0","6")

というように-の無いものに関しては、0をつけて、Daiにいれて、あるものに関しては、そのままDaiにいれたいのです。
234,324,345に関しては、そのままNoに代入します。

で、疑問になっているのは、split関数にて、カンマで区切って配列を作成してから、Forループで処理をしているのですが、なかなかうまくいきません。

このような場合、どのような処理がベストなのでしょうか? 

失礼な質問かもしれませんが、よろしくお願いいます。



1:[回答] さっぱり★ [2002/04/18 08:40 ]

この例では仕様がよく分かりません。
詳しく教えてください。

234,324,345-6ではなく、234,324,345,-6?


2:[回答] ASP [2002/04/18 09:14 ]

大変すみません。

仕様は通常の234とかの数値と枝版が入った、345−5数値をそれぞれデータベースにて検索したいのです。
(234、345−5は例です)
ただし、入力欄は一つしかなく、複数の数値を入力する際にはカンマ区切りで入力します。
(入力例 234、345−5)

そのデータをResponse.Formでデータを取得し、100個の配列を二つ作成し、234、345と枝版の5を別々の配列に格納しインデックスにて番号を決めておきたいのです。

で、データベースを検索するときには、インデックス番号で、データを取得したいのですが・・・・・

例、a(50)とb(50)の345と5を取得する感じ。

仕様は上記のようですが・・・・・


3:[回答] さっぱり★ [2002/04/18 10:02 ]

こんな感じですか?
カンマの数を数えるところは考えてみてください。

Dim Dai, No, Query, Cnt, i, Pos
Query = Request.Form("query")
Cnt = CntComma(Query) 'カンマの数を数える
ReDim Dai(Cnt), No(Cnt)
No = Split(Query, ",", Cnt + 1)
For i = 0 To Cnt
   Pos = InStr(No(i), "-")
   If Pos Then
       Dai(i) = Mid(No(i), Pos + 1)
       No(i) = Left(No(i), Pos - 1)
   Else
       Dai(i) = "0"
   End If
Next


4:[回答] ASP [2002/04/18 13:48 ]

参考にさせてもっらって、今作成しています。
わかりにくい質問に答えてくださって、ありがとうございました。

回答(必須): 状態:

お名前(必須):

e-mail:

URL:




[戻る]

ChaichanPAPA's World