Tack emission, nu har jag löst det med ditt regexp..
Lite pill å så, men en välinvesterad timme..
Set objRE = New RegExp
objRE.Global = True
objRE.IgnoreCase = True
objRE.Pattern="value=\""([^\""]+?) - (\d{4})\"""
Set myMatches = objRE.Execute(strText)
For each item in myMatches
rattStr = Right(item.Value,item.Length-7)
rattStr = Left(rattStr,Len(rattStr)-1)
myarray = Split(rattStr, " - ")
prod = Trim(myarray(0))
art = Trim(cInt(myarray(1)))
SQL = "INSERT INTO [produkter] ([pNamn], [pArtnr]) VALUES ('" & prod & "', " & art & ")"
cn.Execute SQL
Next
Kanske inte var riktigt så jag skulle nyttja det, men jag tänkte att jag skulle försöka lösa det på egen hand, dessutom så var det här en funktion som jag bara skulle köra en gång, därav har jag inget intresse i att optimera den (men feedback på lösningen tar jag självklart åt mig då jag gör liknande grejer i framtiden).
Med hjälp av parentesavgränsningarna i regexpen så kan man plocka ut "prod" och "art" väldigt enkelt.
For each item in myMatches
prod = item.submatches(0)
art = item.submatches(1)
SQL = "INSERT INTO [produkter] ([pNamn], [pArtnr]) VALUES ('" & prod & "', " & art & ")"
cn.Execute SQL
Next
klockrent emission, så skulle jag gjort.
var alldeles för länge sen jag höll på med regular expressions (och arrayer också för den delen), så därav hajade jag inte att paranteserna gav mig rätt värden.
Du gav mig koden på silverfat, å ändå skulle jag till å börja böka med den ;)
en fråga bara...
kan du vad alla små fnuttar och bokstäver i pattern-uttrycket gör i huvudet eller kollar du referens över dem? *hoppas på det sistnämnda* =)