1. Dashboard
  2. Mitglieder
    1. Letzte Aktivitäten
    2. Benutzer online
    3. Team
    4. Mitgliedersuche
  3. Forenregeln
  4. Forum
    1. Unerledigte Themen
  • Anmelden
  • Registrieren
  • Suche
Alles
  • Alles
  • Artikel
  • Seiten
  • Forum
  • Erweiterte Suche
  1. AutoIt.de - Das deutschsprachige Forum.
  2. Mitglieder
  3. diepfeile

Beiträge von diepfeile

  • [Hilfe] wie mach ich des damit autoit links öffnet?

    • diepfeile
    • 18. April 2009 um 18:10

    und wie genau?

  • [Hilfe] wie mach ich des damit autoit links öffnet?

    • diepfeile
    • 18. April 2009 um 16:11

    kann man es auch so machen, dass ff nicht in einem neuen tab, sonderm im aktiven öffnet?

  • regex in der ifschleife

    • diepfeile
    • 17. April 2009 um 15:49

    jo nice funzt. was wäre ich ohne dich *g

    aber was steht denn in dieser @extended? bei mir war es entweder "0", wenn es keine koordinaten waren, oder "8" wenn es welche waren. das "@extended erweiterte Funktionsrückgabe" find ich nciht gerade aussagekräftig.

  • regex in der ifschleife

    • diepfeile
    • 17. April 2009 um 13:35
    Code
    $var = "1200,1000"
    
    
    ;If StringRegExp($var,"^\d{1,4}\,\d{1,4}$") Then 
    ;	$click = StringRegExp($var,"^(\d{1,4})\,(\d{1,4})$",1)
    ;	MouseClick("left",$click[0],$click[1],1)
    ;EndIf
    
    
    
    
    If $click = StringRegExp($var,"^(\d{1,4})\,(\d{1,4})$",1) Then 
    	MouseClick("left",$click[0],$click[1],1)
    EndIf
    Alles anzeigen


    das auskommentiere bsp geht. nur muss ich da zweimal die gleiche regex abfrage machen, kann man das irgendwie vereinfach, dass er direkt in der ifabfrage die daten von der regex-abfrage in einer var speichert statt sie mit dem regex ergebnis zu vergleichen?
    mein ziel ist es zu prüfen ob in der variablen x- und y-wert gespeichert sind, diese soll er dann per maus klicken.

  • grundlegendes zu StringRegExp

    • diepfeile
    • 16. April 2009 um 22:23
    Zitat von Schnuffel

    wenn Du :classes angibst, brauchst Du doppelte [[...]]
    siehe:

    Spoiler anzeigen
    [autoit]


    $var = "Herbert123456789"
    MsgBox(0, "a", StringRegExp($var, "^[[:alnum:]]{4,16}$"))

    [/autoit]

    jojo hab für mein post so lange gebraucht, da hatteste die frage schon beantwortet bevor sie gestellt war *G

    muss man nicht die einzelnen sets mit "," trennen? weil irgendie geht beides
    $var = "1,234,567"
    MsgBox(0,"1",StringRegExp($var,"^[0-9\,]+$"))
    MsgBox(0,"2",StringRegExp($var,"^[0-9,\,]+$"))

  • grundlegendes zu StringRegExp

    • diepfeile
    • 16. April 2009 um 22:19

    ahh danke, das "^" und "$" waren was ich unter anderem suchte.

    nicht gerade hilfreich ist, dass es eine neuere version von http://www.autoit.de/dokumentation/…tringRegExp.htm gibt, von der aber auf der seite nichts genannt wird und veraltet steht auch nicht dran. und mit google hab ich die zuerst gefunden....

    aber ich suche auch noch die neue version von:
    \A Entspricht jedem alphanumerischen Zeichen (a-z, A-Z, 0-9).
    was anscheinend das ist:
    \w Findet Buchstaben: a-z, A-Z oder Unterstrich (_).
    weil \w scheint auch zahlen mit einzuschliessen. kann das jemand bestätigen?
    $var = "Herbert_123"
    MsgBox(0,"a",StringRegExp($var,"^\w{4,16}$"))

    somit ist meine frage gibt es ne neue kurzform (backshlash mit buchstabe) für nur buchstaben?
    und die zeichenklassen funzen bei mir auch nicht:
    $var = "Herbert123"
    MsgBox(0,"a",StringRegExp($var,"^[:alnum:]{4,16}$"))
    ergibt 0
    aja ok muss doppelklammer sein
    $var = "Herbert123"
    MsgBox(0,"a",StringRegExp($var,"^[[:alnum:]]{4,16}$"))

  • grundlegendes zu StringRegExp

    • diepfeile
    • 16. April 2009 um 21:13

    wie wäre es denn dann richtig?
    im ersten fall möchte ich prüfen ob die variable eine zahl im raum von 0-99 ist
    und im zeiten ob der string der variablen zwischen 4 und 16zeichen lang ist und nur aus buchstaben (groß und klein) und zahlen besteht

  • grundlegendes zu StringRegExp

    • diepfeile
    • 16. April 2009 um 20:31

    $var = 123
    MsgBox(0,"1",StringRegExp($var,"\d{1,2}"))

    $var = "Herbert123"
    MsgBox(0,"a",StringRegExp($var,"\A{4,16}"))

    die erste ist wahr, obwohl die zahl doch eine ziffer zuviel hat

    und die zweite sollte doch wahr statt unwahr sein oder was hab ich falsch gemacht?

  • multidimensionale arrays

    • diepfeile
    • 13. April 2009 um 16:25

    danke für deine mühen BugFix. aber ich werd beim array im array bleiben. bringt ja nichts mit haufenweise code das array im array in ein multidimensionales zu verwandeln nur weil man eine zeile sparen will. zudem weiss ich jetzt ja, dass es zwischen den beiden einen unterschied gibt den man beim auslesen berücksichtigen muss

  • multidimensionale arrays

    • diepfeile
    • 9. April 2009 um 21:41

    wo ist denn da dann der unterschied? und wie mach ich dann meines zu so einem?

  • multidimensionale arrays

    • diepfeile
    • 9. April 2009 um 20:07
    C
    #include <Array.au3>
    #include <File.au3>
    
    
    Dim $array
    	_FileReadToArray("blup.cvs", $array)
    	;_ArrayDisplay( $array, "Whole array" )
    	For $i = 1 To $array[0]
    	$array[$i] = StringSplit($array[$i], ",")
    	Next
    	;_ArrayDisplay( $array[4], "Whole array" )
    
    
    $pos = StringSplit("4,11",",")
    $test = $array[$pos[1]]
    $test2 = $test[$pos[2]]
    
    
    MsgBox(0,"blub","echo: " & $test2)
    Sleep(2000)
    Alles anzeigen


    wenn ich die arrays schritt für schritt auslese gehts.
    aber das sollte doch auch direkt gehen laut bsps:

    Code
    Schauen wir uns den Inhalt des Array an:
    
    
        $val[0][0] = 4    ; Anzahl der eingelesenen Schlüssel-Wert Paare
    
    
        $val[1][0] = 'schluesselA'    ; Name des Schlüssels
        $val[1][1] = 1                        ; Wert des Schlüssels
    
    
        $val[2][0] = 'schluesselB'
        $val[2][1] = 2
    
    
        $val[3][0] = 'schluesselC'
        $val[3][1] = 3
    
    
        $val[4][0] = 'schluesselD'
        $val[4][1] = 4
    
    
    Möchte ich jetzt auf den Wert von 'schluesselC' zugreifen, muß ich das Array nach dem Schlüssel durchsuchen und mir den zugehörigen Wert ausgeben lassen:
    
    
        Dim $SuchWert, $SuchSchluessel = 'schluesselC'
        For $i = 1 To UBound($val) -1
            If $val[$i][0] = $SuchSchluessel Then
                $SuchWert = $val[$i][1]
                ExitLoop
            EndIf
        Next
        MsgBox(0, '', 'gesuchter Wert ist: ' & $SuchWert)
    
    
    Ich vergleiche also in jedem Element des Array ob der enthaltene Schlüsselname (Position[n][0]) mit meinem gesuchten Namen übereinstimmt.
    Wird der Schlüssel gefunden, lese ich den zugehörigen Wert aus (Position[n][1]).
    Alles anzeigen


    da gehts doch auch mit dem direkten auslesen von mehrdimensionalen arrays.
    auch bei http://wiki.autoit.de/ siehts es so aus als ob es gehen würde:

    C
    #Include <GuiListView.au3>
    #include <Array.au3>
    
    
    For $i = 0 To UBound($array,1) -1  	; $i = Element 1 (Index=0) bis Zeilen (Index= Zeilen -1)
    	For $k = 0 To 3  		; $k Spalten-Index (im Array und im ListView-Control)
    		_GUICtrlListViewInsertItem ($listview, $k, $array[$i][$k])
    	Next
    Next

    sogar bei

    Code
    #include <Array.au3>
    
    
    Dim $array
    	_FileReadToArray("blup.cvs", $array)
    	;_ArrayDisplay( $array, "Whole array" )
    	For $i = 1 To $array[0]
    	$array[$i] = StringSplit($array[$i], ",")
    	Next
    	;_ArrayDisplay( $array[4], "Whole array" )
    
    
    $pos = StringSplit("4,11",",")
    
    
    
    
    MsgBox(0,"blub","echo: " & $array[4][11])
    Sleep(2000)
    Alles anzeigen


    kommt:

    Code
    : ==> Array variable has incorrect number of subscripts or subscript dimension range exceeded.:
    MsgBox(0,"blub","echo: " & $array[4][11])
    MsgBox(0,"blub","echo: " & ^ ERROR


    aber bei _ArrayDisplay( $array[4], "Whole array" ) wird es doch richtig anzeigt somit muss es doch ein mehrdimensionales array sein.

  • multidimensionale arrays

    • diepfeile
    • 9. April 2009 um 18:26

    ich versteh einfach nicht wo der fehler liegt

    Code
    "Array variable has incorrect number of subscripts or subscript dimension range exceeded.:
    MsgBox(0,"blub","echo: " & $array[$pos[1]][$pos[2]])
    MsgBox(0,"blub","echo: " & ^ ERROR"


    das ist der code:

    C
    #include <Array.au3>
    #include <File.au3>
    
    
    Dim $array
    _FileReadToArray("blup.cvs", $array)
    ;_ArrayDisplay( $array, "Whole array" )
    For $i = 1 To $array[0]
    $array[$i] = StringSplit($array[$i], ",")
    Next
    
    
    ;_ArrayDisplay( $array[4], "Whole array" )
    
    
    $pos = StringSplit("4,11",",")
    
    
    ;_ArrayDisplay( $pos, "Whole array" )
    MsgBox(0,"blub","echo: " & $array[$pos[1]][$pos[2]])
    Sleep(2000)
    Alles anzeigen


    und das der inhalt der cvs:

    Code
    a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p
    a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p
    a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p
    a,b,c,d,e,f,g,h,i,j,z,l,m,n,o,p
    a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p

    eigentlich sollte die ganze datei in eine array packen und dann darin per anderem array was auslesen und in der msgbox ausgeben was eignetlich das z seien sollte.
    die _ArrayDisplay gehen nur halt das letzte nicht

Spenden

Jeder Euro hilft uns, Euch zu helfen.

Download

AutoIt Tutorial
AutoIt Buch
Onlinehilfe
AutoIt Entwickler
  1. Datenschutzerklärung
  2. Impressum
  3. Shoutbox-Archiv
Community-Software: WoltLab Suite™