CcalsonMedlem sedan dec. 2003487 inlägg Frågan#1 Hej jag vill hämta ut information från en textfil där text eller siffer raderna är uppdelade med 5-30 st blankslag (varierande)
Det jag vill göra är att hämta ut all information mellan blankslagen och spara i variablar
Ex: auysjhsd_________assdjaskdjh_____10__________________432____lkjasdasd
Där _ = blankslag (space)
Variabel1 = auysjhsd
Variabel2 = assdjaskdjh
Variabel3 = 10
Variabel4 = 432
Variabel5 = lkjasdasd
Någon som kan hjälpa och förklara hur jag skapar ett passande pattern?
tack på förhand
EemissionMedlem sedan dec. 19996 721 inlägg Är det så att värdena ligger på fasta positioner?
Function p(text)
Set objRegExp = New regexp
objRegExp.Global = true
objRegExp.Pattern = "\s+"
text = objRegExp.Replace(text,";")
p= split(text,";")
end function
dim str()
st = p("auysjhsd assdjaskdjh 10 432 lkjasdasd")
st(0) 'ger auysjhsd
st(1) 'ger assdjaskdjh
st(2) 'ger 10
st(3) 'ger 432
st(4) 'ger lkjasdasd
(Ej testad och inte direkt snyggt eller optimerat :))
TroxyMedlem sedan mars 20041 505 inläggHär är en annan Regexp-variant som är lite mer strikt:
sInput = "auysjhsd assdjaskdjh 10 432 lkjasdasd"
Set oRegExp = New RegExp
oRegExp.Pattern = "^(\w+)\s+(\w+)\s+(\w+)\s+(\w+)\s+(\w+)$"
If oRegExp.Test(sInput) Then
Set oSubMatches = oRegExp.Execute(sInput).Item(0).SubMatches
sMatch1 = oSubMatches(0)
sMatch2 = oSubMatches(1)
sMatch3 = oSubMatches(2)
sMatch4 = oSubMatches(3)
sMatch5 = oSubMatches(4)
Set oSubMatches = Nothing
End if
Set oRegExp = Nothing
Jag har testkört den och fick följande resultat:
sMatch1 = auysjhsd
sMatch2 = assdjaskdjh
sMatch3 = 10
sMatch4 = 432
sMatch5 = lkjasdasd
Hoppas du får det att fungera!