Hi,
Ich habe hier ein kleines Script das aus ein paar Strings Optionen rausfiltert und diese Als Array ausgiebt leider kommen noch ein Paar fehler auf die ich keine Lösung weis und das Script ist an sich ein wenig altertümlich geschrieben ich hoffe ihr könnt mir ein paar verbesserungen vorschlagen :
Spoiler anzeigen
#include <Array.au3>
#include <Inet.au3>
Suche("all","13","2","MacOSX","Admin")
[/autoit] [autoit][/autoit] [autoit]Func Suche($sGame,$sPreis,$sAnzahl,$sPlat,$sUser)
$String = _INetGetSource("http://accoutnspace.ac.funpic.de/Games.txt")
$All = StringSplit($String,"|")
[/autoit] [autoit][/autoit] [autoit][/autoit] [autoit]Local $E1[$All[0]]
Local $E2[$All[0]]
Local $E3[$All[0]]
Local $E4[$All[0]]
Local $E5[$All[0]]
Local $EE1[$All[0]]
Local $EE2[$All[0]]
Local $EE3[$All[0]]
Local $EE4[$All[0]]
Local $EE5[$All[0]]
Local $Ergebnis[$All[0]]
[/autoit] [autoit][/autoit] [autoit]For $i=1 to $All[0]
$Split = StringSplit($All[$i],",")
_ArrayAdd($E1,$Split[1])
_ArrayAdd($E2,$Split[2])
_ArrayAdd($E3,$Split[3])
_ArrayAdd($E4,$Split[4])
_ArrayAdd($E5,$Split[5])
Next
_ArrayDeleteEmpty($E1)
_ArrayDeleteEmpty($E2)
_ArrayDeleteEmpty($E3)
_ArrayDeleteEmpty($E4)
_ArrayDeleteEmpty($E5)
_ArrayDisplay($E1)
[/autoit] [autoit][/autoit] [autoit]For $i=0 to $All[0]
[/autoit] [autoit][/autoit] [autoit][/autoit] [autoit]If StringInStr($E1[$i],$sGame) > 0 Then
_ArrayAdd($EE1,$E1[$i])
EndIf
$Preis = StringSplit($E2[$i],"-")
[/autoit] [autoit][/autoit] [autoit]If $sPreis <= $Preis[2] And $sPreis >= $Preis[1] Then
_ArrayAdd($EE2,$E2[$i])
EndIf
IF $E3[$i] = $sAnzahl Then
_ArrayAdd($EE3,$E3[$i])
EndIf
If $E4[$i] = $sPlat Then
_ArrayAdd($EE4,$E4[$i])
EndIf
If $E5[$i] = $sUser Then
_ArrayAdd($EE5,$E5[$i])
EndIf
Next
_ArrayDeleteEmpty($EE1)
_ArrayDeleteEmpty($EE2)
_ArrayDeleteEmpty($EE3)
_ArrayDeleteEmpty($EE4)
_ArrayDeleteEmpty($EE5)
For $i=0 to $All[0]
_ArrayAdd($Ergebnis,$EE1[$i]&"|"&$EE2[$i]&"|"&$EE3[$i]&"|"&$EE4[$i]&"|"&$EE5[$i])
Next
_ArrayDisplay($Ergebnis)
EndFunc
Func _ArrayDeleteEmpty(ByRef $ARRAY)
If Not IsArray($ARRAY) Then Return 0
Local $arTMP[1]
For $i = 0 To UBound($ARRAY) -1
If $ARRAY[$i] <> '' Then
If $arTMP[0] = '' Then
$arTMP[0] = $ARRAY[$i]
Else
ReDim $arTMP[UBound($arTMP)+1]
$arTMP[UBound($arTMP)-1] = $ARRAY[$i]
EndIf
EndIf
Next
$ARRAY = $arTMP
EndFunc