2009-03-11 3 views
0

に複数の行に複数の分割:VBS-文字列は、私は例えば、複数行を超えることができた文字列を取る関数を作成しようとしている配列

"declare notThese 
declare orThis 

hello = [email protected]$ 
butNot= $ButNotThis$ 

andDefNot = getDate()" 

そして、それを検索し、{string1}を引き出します

${whatever}@{string1}$ 

のようなすべてのパーツから、それを配列にプッシュします。

これはどのようにアーカイブするのですか?それは正規表現を通っているのだろうか、それともそれより簡単だろうか?

また、文字列が上記のように複数の行にレンダリングされても違いがありますか?

答えて

2

正規表現で行うことができます。この場合、複数行かどうかは関係ありません。

Function ExtractStrings(input) 
    Dim re, matches, match, i, output 

    Set re = new RegExp 
    re.Pattern = "\$[^@][email protected]([^$]+)\$" 
    re.Global = True 

    Set matches = re.Execute(input) 

    ReDim output(matches.Count - 1) 

    i = 0 
    For Each match in matches 
    output(i) = match.SubMatches(0) 
    i = i + 1 
    Next 

    ExtractStrings = output 
End Function 
関連する問題