tagCANDY CGI VBレスキュー(花ちゃん)の Visual Basic 6.0用 掲示板
VBレスキュー(花ちゃん)の Visual Basic 6.0用 掲示板
[ツリー表示へ]  [ワード検索]  [Home]

タイトル Re^3: エラー処理追加(修正)
投稿日: 2009/11/13(Fri) 10:12
投稿者GOD
> > Ubound(配列b) > 0のとき、配列b(1)が、欲しい文字列になりませんか?
>
> なりませんか? と問われるなら、[なりません]と答えておきます。
>
へへへ さん の言う通りのプログラム書いてみました。
花ちゃんの言う通りならないし、 仮に正しく修正(?)したとしても S.Eleven さんのもの
と違う結果が返されることがありますね。(どちらの結果が望ましいかはわかりませんが)

Private Sub Command1_Click()
    Debug.Print Extex("ABCD1234EFG", "ABCD", "EFG")
    Debug.Print Extex2("ABCD1234EFG", "ABCD", "EFG")
    '開始文字〜終了文字の間に開始文字が含まれてしまっている場合
    Debug.Print Extex("ABCD1ABCD234EFG", "ABCD", "EFG")
    Debug.Print Extex2("ABCD1ABCD234EFG", "ABCD", "EFG")
End Sub

'Ubound(配列a) > 0だったら、配列a(1)を終了指定文字で再度splitして配列bを作成す
'れば、Ubound(配列b) > 0のとき、配列b(1)が、欲しい文字列になりませんか?
Public Function Extex2(Origin As Variant, LSideword As String, RSideword As String) As Variant
    Dim sSplit() As String
    Dim sRet As String

    sSplit = Split(Origin, LSideword)  '配列a作成
    If UBound(sSplit) > 0 Then
        sSplit = Split(sSplit(1), RSideword)  '配列b作成
        If UBound(sSplit) > 0 Then
            sRet = sSplit(1)    'ここは多分 0だと思うが。
        End If
    End If
    Extex2 = sRet
End Function

- 関連一覧ツリー をクリックするとツリー全体を一括表示します)

古いスレッドにレスはつけられません。