vbで再検索をするには?

解決


BB  2008-09-24 21:26:23  No: 140519  IP: 192.*.*.*

こんばんは。
vbで、検索した結果の、その文字の次の文字から再検索する
には、どんな処理をしたらいいのでしょ。
  よかったら  アドバイスおねがいします。
行と位置、内容の表示をさせたいのです。

a1に以下の内容があった時
a1(0) = "例、例、例"
a1(1) = "一石一石"
a1(2) = "例、例例れえ"
a1(3) = "石橋を渡る"
a1(4) = "四面楚歌"

a2に”例”と入力して  検索ボダン(クリックイベント)をおすと
1(行)、1(位置)、文字列内容と表示され
もう一回検索ボタンをおすと
3(行)1(位置)、文字列内容が表示される
のが以下のプログラムです。

a2 = TextBox1.Text
For s = s To UBound(a1)
r += 1
i = a1(s).IndexOf(a2, 0)
Do While i <> -1
Label2.Text = r
Label4.Text = a1(s)
Label3.Text = a1(s).IndexOf(a2) + 1
s += 1
Exit For
Loop
Next

  これを、これを文字単位で表示させたいのですが?
  たとえば、
a1(0) = "例、例、例"
例で検索した時
検索おしたら      1(行)1(位置)が表示され、
もう一回押したら  1(行)2(位置)が表示されるような
ことです。
  長い文章ですみません、アドバイス等よろしくおねがいします。

編集 削除
uzy  2008-09-25 10:54:57  No: 140520  IP: 192.*.*.*

こんばんわー
かっこ悪い方法かもですが、instrとかどうでしょう?

編集 削除
BB  2008-09-25 11:35:45  No: 140521  IP: 192.*.*.*

ありがとうございます。
instrとindexofって  0か-1の違いだけじゃないのでしょうか?
  ちがってたらすみません。

編集 削除
uzy  2008-09-25 13:36:45  No: 140522  IP: 192.*.*.*

あああ少し勘違いしてましたすみません
ほとんど一緒ですねorz

検索場所を保持する変数を用意して、
検索する際に「開始位置を設定」してあげると出来ますネ

編集 削除
BB  2008-09-25 13:52:24  No: 140523  IP: 192.*.*.*

ありがとうでした^^。

編集 削除