特定文字で囲まれたテキストを抽出

最終更新日 2000年05月23日

特定テキストに囲まれたテキストを抽出するファンクション
'戻り値     テキストが見つからない時は「0」を返す。
'           見つかった時は「見つかったテキストの先頭位置」を返します。
'MyText     検索対象のテキスト
'GetText    見つかったテキストを取得する為の、String型の変数を設定
'StartText  最初に検索するテキスト
'EndText    次に検索するテキスト
'
Public Function GetSelectText( _
    ByVal MyText As String, _
    ByRef GetText As String, _
    ByVal StartText As String, _
    ByVal EndText As String _
) As Long

    'テキストの検索位置格納用
    Dim CheckPosition1 As Long
    Dim CheckPosition2 As Long
    Dim FindLen As Long
    
    '初めのテキストを検索
    CheckPosition1 = InStr(1, MyText, StartText, 1)
    
    'テキストが見つかったかチェック
    If CheckPosition1 = 0 Then
        GetSelectText = 0
        Exit Function
    End If
    
    CheckPosition1 = CheckPosition1 + Len(StartText)
    
    '次のテキストを検索
    CheckPosition2 = InStr(CheckPosition1, MyText, EndText, 1)
    
    'テキストが見つかったかチェック
    If CheckPosition2 = 0 Then
        GetSelectText = 0
        Exit Function
    End If
    
    FindLen = CheckPosition2 - CheckPosition1
    
    'テキストを抽出する
    GetText = Mid$(MyText, CheckPosition1, FindLen)
    
    '見つかったテキストの先頭位置を返す
    GetSelectText = CheckPosition1
    
End Function

VisualBasic Help参照ポイント
Instr関数
Mid$関数

参考にして頂ければ幸いです。

Copyright(C) 1999-2000 スタジオ T-MAN
MailTo:t-man@mx4.ttcn.ne.jp