Hi,
ich habe hier eine Datenbank (wenn man das seltsame Teil so nennen kann).
Die "NBR_Calls" sind mir bekannt und in einer seperaten Liste vorhanden.
Jetzt soll jeder passende "DName" zum "NBR_Call" gefunden werden.
Mit StringRegExp wollte ich den Vorgang schon automatisieren.
In der Theorie ists auch ganz einfach... aber in der Praxis wills einfach nicht funktionieren.
Global $NBR[4] = ["5f6874gboqvvcf455738jse6h","169pp798bnm6n7143bc74","2998b0gtzu4fjj88h44nss3m122n97411","144jhdn849myqtz67cm5mm3"] ;~ die vorgegebenen NBR_Calls
$String = 'Entry = DName: "File/BrushP.bsh", Radio: "1.789", NBR_Call: "5f6874gboqvvcf455738jse6h", MAG: true, config: "/config.cfg", profile: 0' & @CRLF & _ ;~ ein Teil der eingelesenen Datenbank
'radio: "33.4", config: "/config.cfg", profile: 1, nbr_call: "2998b0gtzu4fjj88h44nss3m122n97411", dname: "File/Filter9.fl", mag: false' & @CRLF & _
'Entry = dname: "File/SquareAA.sqr", radio: "250", nbr_call: "169pp798bnm6n7143bc74", mag: false, config: "/config.cfg", profile: 1' & @CRLF & _
'config: "/config.cfg", profile: 0, NBR_Call: "144jhdn849myqtz67cm5mm3", Radio: "500.750", DName: "File/SetB.set", MAG: true'
For $i = 0 To UBound($NBR)-1 ;~ damit die Reihenfolge der NBR_Calls eingehalten wird
$Filter = StringRegExp($String,'(?i)^.*?dname: "file/(.*?)".*?nbr_call: "' & $NBR[$i] & ' ".*?$',1) ;~ damit 100%ig der passende DName gefunden wird
If @Error = 1 Then $Filter = StringRegExp($String,'(?i)^.*?nbr_call: "' & $NBR[$i] & ' ".*?dname: "file/(.*?)".*?$',1)
If @Error = 1 Then
MsgBox(0,"Fehler","Falsches Suchmuster - Eintrag: " & $i+1)
ExitLoop
EndIf
ConsoleWrite($Filter[0] & ";" & $NBR[$i] & @CRLF)
Next
Könntet ihr mir bitte helfen?
Oder hättet ihr andere Ideen oder Verbesserungsvorschläge?
Gruß
Tron