Algorithmus gesucht (String zu RegExp)

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • #16
    Zitat von AmicaNoctis Beitrag anzeigen
    Sicher? Immerhin ist es komplett lookaheadfrei.
    Lookaheads machen reguläre Ausdrücke nicht langsam -- Backtracking dagegen schon.
    Klingon function calls do not have “parameters”‒they have “arguments”‒and they always win them!

    Kommentar


    • #17
      Zitat von fireweasel Beitrag anzeigen
      Backtracking dagegen schon.
      Das ist nach meiner Einschätzung bei diesem Ausdruck auch nicht erforderlich, aber ich lass mich ggf. gerne eines besseren belehren.
      [COLOR="DarkSlateGray"]Hast du die [COLOR="DarkSlateGray"]Grundlagen zur Fehlersuche[/color] gelesen? Hast du Code-Tags benutzt?
      Hast du als URL oder Domain-Beispiele example.com, example.net oder example.org benutzt?
      Super, danke!
      [/COLOR]

      Kommentar


      • #18
        jup, das ist mal das eine.

        @jmc, meine Lösung soll ja auch 2 Fliegen mit einer Klappe schlagen:
        nämlich das Testen auf gültiges Intervall *UND* auch das Testen auf gültige Syntax (s. a. Amicas Posting mit Beispielmuster), um potentielle ("alte") Eingabefehler aufzuspüren.
        Das wird erreicht, indem ich die RegExp so wie sie aus der range2regex-Routine kommt, um den alphanumerischen Teil noch erweitere, und mir somit ein xmal-Testen pro Zelle spare (statt einmal auf Bed. A, dann nochmal auf B, usw.)

        Da mich aber für den Kern-Algorithmus nur der Zahlenteil (links) interessiert hatte, hatte ich das zuvor auch nicht erwähnt, war hier ja auch nicht so relevant - kann ich dann anschließend ja selber ergänzen.

        Zitat von jmc Beitrag anzeigen
        Warum also keine RegExp in der Art?
        1. Sie ist mit mehreren OR-Konditionen relativ langsam.
        STOP.

        Das ist m. E. eine unsinnige (da Pauschal-)Aussage, die auf einige Sprachen zutreffen mag, in anderen u. U. völlig egal ist!
        Es kommt bekanntlich immer auf die Implementation und i. d. R. auch auf die "Nähe" zum Maschinencode an.
        Will sagen, dass du da ggf. bei Java voll recht hast, es ja sogar hardware-/betriebssystemabhängig sein kann da hier für JEDE Implementation eine eigens dafür geschriebene Runtime-Engine laufen muss. D. h. es kann auf einem Mac im schlimmsten Fall 3x so lange benötigen während es auf einer Linux-Maschine superschnell läuft.

        Zum anderen können die Berechnungszeiten u. U. sehr stark differieren, je nachdem ob es sich um eine standalone Programmiersprache oder eine fast ausschließlich für Skripte verwendete (i. d. R. direkt interpretierte) Sprache wie PHP, JavaScript, Perl usw. handelt!
        Zuletzt geändert von syntaxerror; 08.06.2010, 23:49.

        Kommentar

        Lädt...
        X