Frage

Ich habe rund 100 Textzeilen, die ich tokenize wollen, die die folgenden ähnlich sind:

<word> <unknown number of spaces and tabs> <number>

Ich habe Probleme bei der Suche tokenize Funktionen mit VBA. Was wäre die einfachste Methode, solche Strings in VBA tokenize?

War es hilfreich?

Lösung

Sie können Zeile für Zeile lesen und die Split-Funktion verwenden das Wort und die Anzahl von Raum zu teilen. Ich vage remeber VBA hat die Split-Funktion.

Ich habe den folgenden Link, um in Google suchen. Nicht sicher, welche Version von Office Sie verwenden.

http://msdn.microsoft.com/ en-us / library / aa155763 (office.10) aspx

Dieser Link hat die Split-Funktion.

Andere Tipps

Sie können die Split() Methode verwenden oder für komplexere Spiele anschauen, können Sie das "vbscript.regexp" Objekt verwenden:

Sub NewRegex()
    Dim reg
    Dim matches, match, tmpStr As String

    Set reg = CreateObject("vbscript.regexp")
    tmpStr = "blah bla ...."

    With reg
        .IgnoreCase = True
        .MultiLine = False
        .Pattern = "your regex pattern goes here"
        .Global = True
    End With

    Set matches = reg.Execute(tmpStr)

    For Each match In matches
        MsgBox match
    Next mt

End Sub

Hier ist ein Tutorial zur Verwendung von Regex von VBA: Reguläre Ausdrücke (RegExp) in Excel

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top