webForumDet fria alternativet

Extrahera information ur en textsträng!

ASP

1 svar · 286 visningar · startad av lillebror

Medlem sedan apr. 20041 597 inlägg
Frågan#1

Jag har en funktion där jag ska ladda hem aktuellt väder från Luftfartsverkets hemsida för olika flygplatser.

Informationen jag får ser ut på följande sätt och är lagrad i en textfil. Denna textfil vill jag läsa och lägga in i en databas.

Det hoppas någon kan svara på är hur jag med en funktion kan särkilja dessa block som finns på varje rad så att funktionen läser en rad tills den stöter på ett "=". Därefter skall den börja läsa på nästa rad och så vidare.

Nedan är ett exempel på hur en textsträngar med väderinfo kan se ut för en viss flygplats...

**ESDF 131350Z 23008KT 9999 FEW023 SCT030 BKN034 18/12 Q1002=

ESGG 131350Z 23010KT 9999 SCT015 BKN025 16/11 Q1002=**

:)

Medlem sedan dec. 20003 887 inlägg
#2

Jag skulle läsa in all text till en sträng och sedan använda mig av Split() för att dela upp strängen i en array.

Om det är text efter = skulle jag använda mig av RegExp också.

Sub StoreWeatherInfo(strFromFile)
  Set objRX = New RegExp

  objRX.Global = True
  objRX.IgnoreCase = True
  objRX.Pattern = "(.*=).*\n"

  strFromFile = objRX.Replace(strFromFile, "$1")

  astrInfo = Split(strFromFile, "=")

  For i = 0 To UBound(astrInfo) - 1
    strSql = "INSERT INTO tblWeather (strInfo) VALUES ('" & astrInfo(i) & "')"

    objConn.Execute strSql, , 128
  Next
End Sub

Set objFSO = Server.CreateObject("Scripting.FileSystemObject")
Set objFile = objFSO.OpenTextFile("X:\weather.txt", 1)

StoreWeatherInfo(objFile.ReadAll)

objFile.Close
281 ms totalt · 4 externa anrop · v20260731065814-full.a51de22e
122 ms — deklarationer (db)
0 ms — hämta statistik (cache)
154 ms — hämta tråd, inlägg och bilagor (db)
124 ms — ändringar (db)