Geschwindigkeit

  • Es scheint mehrere Lösungen für das Problem zu geben. Ich würde ein paar ausprobieren und ggf die schnellste wählen.

    ...somit dürfte der ganze Rest - die Diskussion über enthaltenes RegEx (oder auch nicht) - total egal sein, solange die Funktion am Ende auch funktioniert, richtig?

    Simon nörgelt, Simon nervt - aber Simon verbessert die Welt. Glaubt er.

  • Zitat von autoBert

    Oder hast du den Source des AutoItinterpreters?

    Zitat von chip

    Logische Schlussfolgerung.


    Hättest du dann, wie Ineluki, den Code gelesen, wüsstest du, das kein RegEx benutzt wird.

  • Hättest du dann, wie Ineluki, den Code gelesen, wüsstest du, das kein RegEx benutzt wird.

    Im Gegensatz zu dir kleiner Mann sage ich ja nix dagegen das ich mich geirrt habe ;) (wobei das nach wir vor nicht bewiesen ist wie es im aktuellen Code ist bzw. es absoluter Blödsinn ist nicht bereits vorhanden C Methoden zu verwenden). War nur zur Vollständigkeit bezüglich Split-Regexp und .net Framework.

    Andy hat mir ein Schnitzel gebacken aber da war ein Raupi drauf und bevor Oscar das Bugfixen konnte kam Alina und gab mir ein AspirinJunkie.

  • Ich hatte wenigstens zugegeben, dass ich mich gerirrt habe, bis Ineluki den Code gezeigt hat. Du allerdings gehst ja nichtmal darauf ein. Zukünftig recherchierst du vielleicht mal, bevor du mir einen "Bildungsausftrag an der Jugend" machen willst.

    Der Code ist sicherlich kein "absoluter Blödsinn". Und das: "War nur zur Vollständigkeit bezüglich Split-Regexp und .net Framework." ist ziemlich falsch, da, wie wir schon erörtert haben, du noch nichtmal weist ob das überhaupt benutzt wird.

    Im Changelog steht nichts von Änderungen an der StringSplit Funktion, also bleibt das klar Fazit:

    StringSplit arbeitet auch intern sehr wahrscheinlich nicht mit RegExp.

    Nur darum geht es, und du brauchst da nicht sagen, du hättest nicht das Gegenteil behauptet (ich hatte mir sogar die Mühe gemacht, mich in allen Beiträgen zu korrigieren, aber ich finde das Quellcode überzeugender als deine "Argumente". Denn du hast behauptet, du hast den Code. Hast ihn aber nicht gelesen.

    Denn als großer Mann gibt man auch zu, dass man sich gerirrt hat. Und das, was ich von dir zitiert habe, hat nichts mit der Vollständigkeit zu tun.

    Da wir jetzt alle wissen wie es funktioniert, könen wir denke ich mal einen Schlussstrich ziehen.

  • Nun ist die Frage, wie ich weiter machen soll. Ist ein regulärer Ausdruck schneller, als die String-Funktionen?


    AnnaM: wurde Deine Frage hier in diesem Thread hinreichend genug beantwortet?


  • Der Code ist sicherlich kein "absoluter Blödsinn". Und das: "War nur zur Vollständigkeit bezüglich Split-Regexp und .net Framework." ist ziemlich falsch, da, wie wir schon erörtert haben, du noch nichtmal weist ob das überhaupt benutzt wird.

    Ich merke schon mit lesen hast es nicht so wirklich ;). Das war die Antwort auf die indirekte Aussage von Autobert bezüglich Split-Regexp wäre nur mit .net 4.5 möglich.


    Denn du hast behauptet, du hast den Code.

    Wo? 8)

    Definitiv verwendet StringSplit() keine Regulären Ausdrücke.

    Aber kleiner Mann auf deinen Beweis das in der aktuellen Autoitversion kein Regexp benutzt wird warte ich nach wie vor vergeblich.

    Andy hat mir ein Schnitzel gebacken aber da war ein Raupi drauf und bevor Oscar das Bugfixen konnte kam Alina und gab mir ein AspirinJunkie.

  • https://autoit.de/index.php?page…5092#post275092

    , was noch nicht einmal unrealistisch ist, da der COde ja eingesehen werden kann. :P

    Aber da ich weiß, dass du sowie stur wie sonstwas bist, will ich da nicht weiter disktuieren, du hast behauptet es arbeitet mit RegEx, es it nicht so, jetzt wissen alle Bescheid. Damit ist alles geklärt.

    Schon die Tatsache, dass du nichtmal auf meinen Beitrag wirklich eingehst, und nicht mal etwas einräumen kannst, lässt mich wirklich auf dich schließen. Für mich ist hier Ende. "Mit lesen hast du es nicht so wirklich", du wohl auch nicht, da es zwischen dir und mir nur um die Verwendung von RegEx und nichts anderem geht. Ich muss schon sagen, dass du bis jetzt der unfreundlichste Mensch hier im Forum gegenüber mir bist, und das muss ich mir nicht gefallen lassen. Ich kenne solche Leute leider auch im Reallife.

    Ende Gelände, (gedankliches) Ignor wieder an, Schluss mit dem Rumgenerve.

    Einmal editiert, zuletzt von minx (3. Dezember 2012 um 13:44)

  • Hallo alle Zusammen,

    ich werde nie wieder eine Frage zum Thema "Geschwindigkeit" stellen :)
    Hier ist ja was los, während ich weg bin *Gg* So viel Rückmeldung hatte ich noch nie! *Gg*
    Also ich hatte mich auch verschrieben am Anfang. Eine Null habe ich vergessen. Es sind so an die 100.000 Zeilen.
    Das ist auch das Problem. Ich habe gesehn, dass ab Zeile 98.000 (so weit habe ich gar nicht geschaut) es so ausschaut:
    "Plot1[TAB]C:\Testordner\Testdatei.test"
    "79€"
    "Plot2[TAB]C:\Testordner\Testdatei2.test"
    "66€"

    Diese Zeilen können sich also beliebig verändern wie schon beschrieben und in der nächsten steht der Betrag.
    Also mache ich es lieber mit RegExp, oder? Ich will ja auch zu jeder Zeile den entsprechenden Preis haben.

    Die Anna :*

    "Wo kämen wir hin, wenn jeder sagte wo kämen wir hin, und niemand ginge, um zu sehen, wohin wir kämen, wenn wir gingen..." :wacko:

  • Diese Zeilen können sich also beliebig verändern wie schon beschrieben und in der nächsten steht der Betrag.
    Also mache ich es lieber mit RegExp, oder? Ich will ja auch zu jeder Zeile den entsprechenden Preis haben.

    gerade weil sie sich beliebig ändern können solltest du StringSplit nehmen:

    Bei der StringSplit-Methode brauchtr man sich um nichts kümmern, wenn ein neuer Begriff auftaucht wird diese Zeile trotzdem autmatisch getrennt.
    Bei der RegEx-Methode muss man das Skript anpassen und dies dauert länger als einige Millisekunden, vor allem muss man daran denken ansonsten werden Zeilen unterschlagen.

    auch wenn durch eine 0 mehr es jetzt vielleicht Sekunden sind Skript anpassen dauert länger.


    Ich merke schon mit lesen hast es nicht so wirklich ;). Das war die Antwort auf die indirekte Aussage von Autobert bezüglich Split-Regexp wäre nur mit .net 4.5 möglich.


    Leider habe ich in diesem Beitrag nur bis

    Logische Schlussfolgerung

    gescrollt und sah mich bestätigt: du hast dich getäuscht.
    Im übrigen hast du zu stark verkürzt zitiert:

    Ich habe aber kein .NET Framework 4.5 installiert und bisher auch nirgends gelesen dass AutoIt überhaupt irgendein .NET Framework benötigt.

    Dass du dann mit einem Link auf die MSDN:

    Leg ich dir halt mal den Arm aus der Sonne: http://msdn.microsoft.com/de-de/library/…=vs.110%29.aspx

    dass AutoIt StringSplit mit RegEx realisiert hat ist listig und daher

    Und nun bist du dran minx, beweise mal das nicht Regexp benutzt.

    nicht zulässig. Dies

    Ich denke mal das hier sollte die Diskussion klären:

    Spoiler anzeigen


    Ich persönlich sehe das kein RegEx.
    Ist zwar von der 3.1.0 aber ich denke, da hat sich nichts geändert:
    http://www.autoitscript.com/autoit3/files/…-v3.1.0-src.exe


    sollte als Beweis genügen, ansonsten wäre es wohl im ChangeLog erwähnt.

    mfg autoBert

    3 Mal editiert, zuletzt von autoBert (3. Dezember 2012 um 17:44)

  • Danke an alle. Ich habe es nun probiert und es mit StringSplit gelöst.
    Supi, Danke an Alle! :party:

    Die Anna :love:

    Die Anna :*

    "Wo kämen wir hin, wenn jeder sagte wo kämen wir hin, und niemand ginge, um zu sehen, wohin wir kämen, wenn wir gingen..." :wacko: