Testen bitte: Online-RegExp-Auswertungs-Tool

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

  • Testen bitte: Online-RegExp-Auswertungs-Tool

    so,

    ich hab ein neues spielzeug .... *g

    http://pcre.nophia.de/evaluate/index.php

    wenn ihr mal nen regexp habt, der nicht paßt oder mal schauen wollt, was beim preg_ rauskommen würde ....
    ist noch ein wenig buggy, das drumrum ist auch noch nicht vollständig, darum poste ich mal hier ...

    probiert mal fleißig.
    bugs könnte ihr auch dort posten .... falls die buglist nicht buggy ist ...

    vor allen bei ettlichen \ und " oder ' gibts noch probleme ...
    thanks.

    Die Zeit hat ihre Kinder längst gefressen

  • #2
    jo der Sinn dieser Fehlermeldung ist nicht ganz passend

    Fehlerhafter regulärer Ausdruck
    In der Syntax deines RegExp ist ein Fehler. Die PHP-Fehlermeldung dazu lautet:
    Undefined index: HTTP_USER_AGENT
    Ich habs nichts eingeben und benutze Opera

    ist ja ne kleinigkeit
    [color=blue]MfG Payne_of_Death[/color]

    [color=red]Manual(s):[/color] <-| PHP | MySQL | SELFHTML |->
    [color=red]Merke:[/color]
    [color=blue]Du brauchst das Rad nicht neu erfinden ! [/color]<-ForumSuche rettet Leben-> || <-Schau in den Codeschnippsels->

    Murphy`s Importanst LAWS
    Jede Lösung bringt nur neue Probleme
    Das Fluchen ist die einzige Sprache, die jeder Programmierer beherrscht.
    In jedem kleinen Problem steckt ein großes, das gern raus moechte.

    Kommentar


    • #3
      hab einfach nur stur den error-handler verbogen
      fehler in der visitor-class ^^

      edit: probierste bei gelegenheit nochmal?
      edit: grad nochn js-bug entdeckt. ich liebe das.
      Zuletzt geändert von derHund; 19.07.2004, 22:32.
      Die Zeit hat ihre Kinder längst gefressen

      Kommentar


      • #4
        - matched nur einen treffer, obwohl dieser mehrfach vorkommt ... absicht?
        - die übergebene regex solltest du trimmen, zeilenumbrüche am ende sind tödlich
        - die ausgabe/auswertung würd ich mir oben wünschen, wegen der übersichtlichkeit

        ansonsten sehr schön, wird bestimmt ein nützliches tool.

        baust du die erklärung noch aus? kommt da noch ein regex helfer ala: ich habe text und suche pattern X ?
        Kissolino.com

        Kommentar


        • #5
          - matched nur einen treffer, obwohl dieser mehrfach vorkommt ... absicht?
          ist nur preg_match, falls du das meinst ...?
          - die übergebene regex solltest du trimmen, zeilenumbrüche am ende sind tödlich
          wollte das per warnung verkünden, 'line feed am ende des regexp' oder so ...
          die ausgabe/auswertung würd ich mir oben wünschen, wegen der übersichtlichkeit
          ok. werds nachher mal umbasteln. preg_replace gibts dann auch *g
          baust du die erklärung noch aus?
          ja, klar. wie gesagt, erstmal soll das teil vernünftig laufen ...
          kommt da noch ein regex helfer ala: ich habe text und suche pattern X ?
          das wär natürlich was, aber da muß ich erstmal drüber nachdenken.

          nochwas: ich würde gern den /e beim preg_replace zulassen ... das problem ist halt nur, daß sich da ne riesen sicherheitslücke auftut, ... mal schauen, ...
          Die Zeit hat ihre Kinder längst gefressen

          Kommentar


          • #6
            feine sache, auch mit nettem design.

            hab ne falsche verlinkung im outro gefunden:
            puzzle-generator.de verlinkt auf dhudk.de ... ich wollte es nicht unter bugs posten
            Zuletzt geändert von hansi; 20.07.2004, 12:41.

            Kommentar


            • #7
              *g, danke.
              wie gesagt, der rest ist eher dürftig als fertig.
              Die Zeit hat ihre Kinder längst gefressen

              Kommentar


              • #8
                Original geschrieben von derHund
                ich würde gern den /e beim preg_replace zulassen ... das problem ist halt nur, daß sich da ne riesen sicherheitslücke auftut, ... mal schauen, ...
                imerk dir doch einfach, dass der tester da ein e als modifiere haben will und mach sowas in der art
                PHP-Code:
                <?php
                $replaced 
                preg_replace($pattern_ohne_e_modifier$replace$subject);
                $replaced highlight_string('<?php echo '.$replaced.'; ?>'true);
                $replaced preg_replace('%(&lt;\\?php)(.*)(\\?&gt;)%''$2'$replaced);
                echo 
                $replaced;
                ?>
                Ich denke, also bin ich. - Einige sind trotzdem...

                Kommentar


                • #9
                  @P_O_N
                  hab deinen beitrag ins PHP-Forum verschoben, da er, wie du richtig erkannt hast, nicht hierhin gehört
                  Ich denke, also bin ich. - Einige sind trotzdem...

                  Kommentar


                  • #10
                    imerk dir doch einfach, dass der tester da ein e als modifiere haben will und mach sowas in der art
                    kann dir grad nicht folgen der sonst auszuführenden string wird einfach nur ausgegeben?

                    hmm, viel mehr wird mir wohl nicht bleiben ... mal schauen.
                    Die Zeit hat ihre Kinder längst gefressen

                    Kommentar


                    • #11
                      Code:
                      $segment['content_body'] = preg_replace($regex,
                       '"</p><pre class=\"php\">".get_sourcecode(\'$4\')."\n </pre><p>"', 
                      $segment['content_body']);
                      so siet das bei mir aus (beispielhaft)

                      du brauchst das e als modifier um funktionen aufzurufen
                      das ergebnis der funktion wird zum ersetzen genutzt, ist also etwas stringähnliches und kann mit echo ausgegeben werden

                      EDIT:
                      php zu code gemacht, bödes verschlucken der \
                      Zuletzt geändert von mrhappiness; 20.07.2004, 17:30.
                      Ich denke, also bin ich. - Einige sind trotzdem...

                      Kommentar


                      • #12
                        ich glaub, wir reden aneinander vorbei.

                        wofür das /e ist, ist klar. mir gehts darum, daß dann keiner im replacement nen unlink(\hda) oder schlimmeres angibt ...

                        muß erstmal essen ...
                        php zu code gemacht, bödes verschlucken der \
                        hab sowieso im quote geschaut ...
                        Die Zeit hat ihre Kinder längst gefressen

                        Kommentar


                        • #13
                          Original geschrieben von derHund
                          ich glaub, wir reden aneinander vorbei.
                          jein
                          mir gehts darum, daß dann keiner im replacement nen unlink(\hda) oder schlimmeres angibt
                          schon klar, genau das verhinderst du ja mit meinem vorschlag


                          ich gehe einfach mal davon aus, dass der anteil selbst gebastelter funktionen, die bei sowas zum einsatz kommen, deutlich größer wird, als der einsatz von standard-funktionen wie chdir, unlink, exec, print, ...

                          da du die vom benutzer geschriebene funktion aber nicht kennst, könntest du eh nichts evaluieren und daher finde ich die variante mit der ausgabe gar nicht so schlecht

                          schließlich sieht der benutzer ja auch, welche paramter er der funktion übergeben würde, oder?

                          alternativ könntest du dir überlegen, welche funktionen du verbieten willst, nach diesen suchen und sie rausschmeißen, aber das verfälscht das ergebnis ja auch
                          Ich denke, also bin ich. - Einige sind trotzdem...

                          Kommentar


                          • #14
                            vor allem, was machst du damit:

                            text: irgendwas, völlig egal
                            pattern: (.*)
                            replace: 'var_export($GLOBALS, true).var_export(get_defined_constants(), true))'


                            damit bekomm ich ziemlich sicher irgendwelche daten, die ich nicht sehen sollte
                            Ich denke, also bin ich. - Einige sind trotzdem...

                            Kommentar


                            • #15
                              ja, darum. ein vollständig 'sicheres' filtern würd ich wahrscheinlich nicht hinkriegen ... mal schauen.

                              werd wohl dann die
                              die variante mit der ausgabe
                              nehmen ....
                              Die Zeit hat ihre Kinder längst gefressen

                              Kommentar

                              Lädt...
                              X