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. BugFix

Beiträge von BugFix

  • Text rückwärts ausgeben

    • BugFix
    • 21. September 2009 um 15:25

    Noch 'ne Variante:

    [autoit]

    $text = 'Das ist ein Test'
    $array = StringSplit($text, '')
    $rueckwaerts = ''
    For $i = $array[0] To 1 Step -1
    $rueckwaerts &= $array[$i]
    Next
    ConsoleWrite($rueckwaerts & @CRLF)

    [/autoit]
  • Datumszeitrum aus Strings erkennen.

    • BugFix
    • 21. September 2009 um 14:07

    Ich weiß ja nicht, was du ganz exakt mit dem Skript erreichen möchtest. Die Array-Operationen innerhalb der Schleife bremsen gewaltig. Muß das überhaupt sein?
    Gib mal genau an:
    - Zustand vorher
    - gewünschter Zustand

  • log-file auswerten

    • BugFix
    • 21. September 2009 um 13:55
    Zitat von vivus

    könntest du mir aber bitte

    ==> $ret = StringRegExp(FileRead($file), '(?:EAN-Code: )(\d+)', 3) <== erklären ?

    '(?:EAN-Code: )(\d+)' - ist das Suchmuster (Pattern)
    (?:EAN-Code: ) - erster Ausdruck in Klammern (Backreferenz) dient zum Finden des Strings (EAN...)
    ?: ist die Anweisung: diese Backreferenz im Ergebnis nicht aufführen
    (\d+) - zweite Backreferenz, ist zu berücksichtigen.
    \d bedeutet Ziffer, + ist ein Quantifier und heißt mindestens 1-mal bis beliebig oft

  • Datumszeitrum aus Strings erkennen.

    • BugFix
    • 21. September 2009 um 12:09

    Probier mal so:

    [autoit]

    Local $vonDate = '2009/01/02'
    Local $bisDate = '2009/01/03'
    Local $array[3] = [ _
    '01.01.2009,13:34:49, hallo', _
    '02.01.2009,13:34:49, hallo2', _
    '03.01.2009,13:34:49, hallo3']

    [/autoit][autoit][/autoit][autoit]

    For $i = 0 To UBound($array) -1
    $Date = _strToDate(StringLeft($array[$i], 10))
    If $Date >= $vonDate And $Date <= $bisDate Then ConsoleWrite(StringTrimLeft($array[$i], 21) & @CRLF)
    Next

    [/autoit][autoit][/autoit][autoit]

    Func _strToDate($s)
    Return StringRight($s, 4) & '/' & StringMid($s, 4, 2) & '/' & StringLeft($s, 2)
    EndFunc

    [/autoit]
  • log-file auswerten

    • BugFix
    • 21. September 2009 um 11:09

    Du brauchst nur den letzten EAN? Das geht ganz fix mit RegEx:

    [autoit]

    #include <File.au3>
    $start= TimerInit()
    $file = @ScriptDir & '\test_write.txt'

    [/autoit][autoit][/autoit][autoit]

    $ret = StringRegExp(FileRead($file), 'EAN-Code: \d+', 3)
    ConsoleWrite('letzter EAN-Code: ' & $ret[UBound($ret)-1] & @CRLF)

    [/autoit][autoit][/autoit][autoit]

    ConsoleWrite('Zeit: ' & TimerDiff($start) & @CRLF)

    [/autoit]

    Edit:
    Und wenn du nur den numerischen Wert möchtest, dann so:

    [autoit]

    $ret = StringRegExp(FileRead($file), '(?:EAN-Code: )(\d+)', 3)

    [/autoit]
  • log-file auswerten

    • BugFix
    • 21. September 2009 um 10:56

    Und das hier könnte noch etwas schneller sein (hab mal eine Testdatei mit 2,7 MB verwendet [100600 Zeilen], _FileCountLines($file) ist der Zeitfresser. Mit 1,5 GHz braucht es 2,5 sec. bei mir :

    Spoiler anzeigen
    [autoit]

    #include <File.au3>
    $start= TimerInit()
    $file = @ScriptDir & '\test_write.log'
    $lines = _FileCountLines($file)
    $lastLog = ''
    While 1
    If Not StringInStr(FileReadLine($file, $lines), 'Temperatur:') Then
    $lines -= 1
    ContinueLoop
    Else
    Do
    $zeile = FileReadLine($file, $lines)
    $lastLog = $zeile & @CRLF & $lastLog
    $lines -= 1
    Until StringLeft($zeile, 1) = '['
    ExitLoop
    EndIf
    WEnd

    [/autoit] [autoit][/autoit] [autoit]

    ConsoleWrite($lastLog & @CRLF)
    ConsoleWrite('Zeit: ' & TimerDiff($start) & @CRLF)

    [/autoit]
  • log-file auswerten

    • BugFix
    • 21. September 2009 um 10:07

    Du kannst direkt die letzte Zeile lesen:

    [autoit]

    #include< File.au3>
    $file = 'Dein_Pfad_zur_Log'
    $lines = _FileCountLines($file)
    MsgBox(0, 'Inhalt letzte Zeile', FileReadLine($file, $lines))

    [/autoit]

    Falls noch ein Zeilenumbruch zusätzlich enthalten ist, kann die letzte Zeile leer sein - dann halt: $lines-1
    So kannst du dann in einer Schleife rückwärts die letzten 7 Zeilen deines Log-Blocks auslesen.

  • Geeeeeeeeeeeeeeeeeeeeeeeeburtstag

    • BugFix
    • 20. September 2009 um 23:26

    Kaum ist man mal ein WE weg - schon hat der GUN Geburtstag. :D
    Also auch von mir nachträglich Alles Gute.

  • Mein Jump n' Run Spiel mit der Irrlich Engine - Neue Version!

    • BugFix
    • 20. September 2009 um 23:15

    Wer sich mehr für Irrlicht interesiert: A. Percy pflegt im EN-Forum die Au3IrrLicht. http://www.autoitscript.com/forum/index.php?showtopic=70506&view=findpost&p=516602

  • Doppelklick in Listview auswerten

    • BugFix
    • 16. September 2009 um 21:27

    Kann nicht bestätigt werden.
    Das Skript von mir aus Post #4 läuft problemlos unter 3.3.0.0
    OS: XP

  • Doppelklick in Listview auswerten

    • BugFix
    • 16. September 2009 um 21:10
    Zitat von Jam00

    Ich hab ein Problem, beide scripte funkzionieren bei mir nicht :(

    He, du bist nun schon so lange dabei. Und dann solch eine magere Fehlerbeschreibung. :rolleyes:

  • bildschirm in fenster

    • BugFix
    • 15. September 2009 um 20:37
    Zitat von Greenhorn

    Für eine Bildschirmlupe ist AutoIt zu langsam, schätze ich ...

    Da hast du dich aber gewaltig verschätzt. :D
    Guckst du hier: https://autoit.de/index.php?page…19322#post19322

  • Das Aktuelle SciTe Editor Script aus SciTe Lesen?

    • BugFix
    • 15. September 2009 um 20:12
    Zitat von Mr.Script

    [Ps. Noch an BugFix: C:\Programme\AutoIt3.3\SciTe\API\User.Call.tips.api oder so ungefähr lautet der name einer SciTe Datei in der die Benutzer
    zusätzliche Befehle und Konstanten eintippen können. Diese werden dann
    wenn man ein Script am Screiben ist als einfüg hilfe angeboten.]


    :D Was Calltipps sind, weiß ich. ;)
    Ich erstelle sie zu fast all meinen UDF meist gleich mit Skript zur automatischen Ergänzung der calltip.api.

    Ich verstehe nur nicht in welchem Zusammenhang Calltipps mit deinem Problem stehen.

  • Das Aktuelle SciTe Editor Script aus SciTe Lesen?

    • BugFix
    • 15. September 2009 um 16:48
    Zitat von Mr.Script

    und diese dann nur in die API\User.Call.tip.api File von SciTe

    Also mit dem Satz kann ich gar nix anfangen. Was willst du denn mit den Calltipps?

    Und alles andere erledigt OrganizeIncludes für dich (Analyse des aktuellen Skripts, erforderliche Includes einbinden). Schau dir den Thread von Xenobiologist an, dort ist genau beschrieben, wie du es einrichten mußt.

  • !!!!!Admin-Tool v 1.0 ist fertig nochmals häftig erweitert vbs verarbeitung und bericht speicherung!! Leute ich brauche eure meinung!!!!!

    • BugFix
    • 15. September 2009 um 12:30

    Mal als Tipp:
    Erstelle nicht für jede Versionsänderung deines Skripts einen neuen Thread. Das reißt auch alles aus dem Zusammenhang.
    Editiere einfach deinen ersten Post und aktualisiere dort.
    Damit die Änderung auch im Portal angezeigt wird, postest du dann in diesem Thread neu: Änderungen..... s. Post 1.

  • Exel bzw. Calc frage

    • BugFix
    • 14. September 2009 um 22:42

    So, nun aber richtig.
    Teste mal, ob es alle Gleichungen erfüllt.

    [autoit]

    ConsoleWrite(_Binom('-2x', '3y') & @CRLF)

    [/autoit][autoit][/autoit][autoit]

    Func _Binom($a, $b)
    Local $faktorA = Number(StringLeft($a, StringLen($a)-1))
    Local $faktorB = Number(StringLeft($b, StringLen($b)-1))
    Local $signA = StringRight($a, 1)
    Local $signB = StringRight($b, 1)
    Local $prod = 2*$faktorA*$faktorB
    If $prod > 0 Then $prod = '+' & $prod
    Local $2 = Chr(178), $sign = ''
    If Not StringInStr($b, '-') Then $sign = '+'
    Return '(' & $a & $sign & $b & ')' & $2 & ' = ' & $faktorA^2 & $signA & $2 & ' ' & _
    $prod & $signA & $signB & ' +' & $faktorB^2 & $signB & $2
    EndFunc

    [/autoit]
  • Intervallschachtelung per AutoIt?

    • BugFix
    • 14. September 2009 um 22:21

    Intervallschachtelung ist doch ein rekursives Aufrufen einer Funktion. Und das kannst du natürlich auch in AutoIt machen. Achte aber darauf, dass die max. Rekursionstiefe nicht überschritten wird.

  • Etwas im Aktuellen Browserfenster auslesen

    • BugFix
    • 14. September 2009 um 22:05
    Zitat von Stilgar

    Müßen mußt du nicht.


    Da hast du völlig recht. ;)
    Als ich am Schreiben meines Posts war, war deiner noch nicht gepostet. Somit hatte ich mich nicht auf deinen (völlig korrekten) Hinweis bezogen. Den Parameter Attach bei _IECreate hatte ich auch nicht bedacht.

  • Exel bzw. Calc frage

    • BugFix
    • 14. September 2009 um 21:51

    Verstehe nicht ganz, was du jetzt möchtest. Soll eine grafische Auflösung der Funktion stattfinden, oder möchtest du ein Ergebnis haben?

  • Etwas im Aktuellen Browserfenster auslesen

    • BugFix
    • 14. September 2009 um 21:14

    Statt: _IECreate() mußt du _IEAttach() verwenden.

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™