2009-03-11 8 views
0

Je suis en train de créer une fonction qui prendra une chaîne qui pourrait être sur plusieurs lignes, par exemple:VBS- cordes divisé multiples sur plusieurs lignes dans un tableau

"declare notThese 
declare orThis 

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

andDefNot = getDate()" 

Et recherche à travers elle, tirant {string1} de toutes les parties comme

${whatever}@{string1}$ 

puis en les poussant dans un tableau.

Comment est-ce que je l'archiverais? Serait-ce à travers regex ou est-ce plus simple que cela?

Aussi serait-ce une différence si la chaîne restitue plusieurs lignes comme ci-dessus?

Répondre

2

Vous pouvez le faire via regex. Multi-ligne ou non ne joue pas de rôle dans ce cas.

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 
Questions connexes