Hola: regex: \d findet seit stunden nur buchstaben

Hola,

ich werde hier noch verrückt! aaarrrgh. Also:

<?php
if(preg_match ('/\d{1,3}/i', $_SERVER['QUERY_STRING'])
    print "blablabla";
?>

und der Query-String:

refer=server/%2Flibrarys%2Fextra%2Fspecialcss-generator.php%3Ffile%3Dhttp%253A%252F%252Fserver%252Fimages%252Fgd%252Ffrontend%252Fdokumentation.htm.....

und so weiter.

Kann mir irgendjemand sagen, warum zum Teufel diese dumme Pattern-Engine glaubt, dass die Buchstaben "refer" Zahlen sind?

Oder habe ich nach langer Inaktivität PHP verlernt:

<?php
 $the_server = 'http://' . $_SERVER['SERVER_NAME'] . '/';

if(!$_SERVER['QUERY_STRING'])
   header("Location: {$the_server}portal.php"); // /librarys/umstellung
 elseif(preg_match ('/\d{1,3}/i', $_SERVER['QUERY_STRING']))
   header("Location: ${the_server}server/webcode.php?code=$_SERVER[QUERY_STRING]");
 elseif(preg_match('/(=|&)/i', $_SERVER["QUERY_STRING"]))
 {
   if(isset($_GET['refer']))
     header("Location: ${the_server}server/refer.php?$_GET[refer]");
   elseif(isset($_GET['dictionary']))
     header("Location: ${the_server}hilfe/dictionary/?term=$_GET[dictionary]&view=simple");
 }
 else
 {
   function ref_to($where, $abs=false)
    {
      global $the_server;
      header('Location: ' . ($abs ? '' : $the_server) . $where);
    }

switch(strtolower($_SERVER['QUERY_STRING']))
   {
     case 'start':
     case 'portal':
     case 'go':              ref_to('portal.php'); break;
     case 'upload':          ref_to('transfer/upload'); break;
     case 'download':        ref_to('transfer/download'); break;
     case 'windows':         ref_to('transfer/windows.php'); break;
     case 'transfer':
     case 'datatransfer':
     .....
     usw.
?>

? Wohl kaum. Also, diese Seite wird mit dem oben angegebenen Query-String "geladen", und immer, aber auch immer seit mehreren Stunden lädt sich jetzt diese dumme /server/webcode.php-Seite.

Warum?

Ich werde verrückt

vielleicht kann mir ja jemand helfen,

dreHola

  1. Hi,

    refer=server/%2Flibrarys%2Fextra%2Fspecialcss-generator.php%3F[...]
    Kann mir irgendjemand sagen, warum zum Teufel diese dumme Pattern-Engine glaubt, dass die Buchstaben "refer" Zahlen sind?

    äh, ich sehe da auch welche, jeweils nach einem Prozentzeichen.

    Cheatah

    --
    X-Will-Answer-Email: No
    X-Please-Search-Archive-First: Absolutely Yes
    1. Hi Cheatah,

      refer=server/%2Flibrarys%2Fextra%2Fspecialcss-generator.php%3F[...]
      Kann mir irgendjemand sagen, warum zum Teufel diese dumme Pattern-Engine glaubt, dass die Buchstaben "refer" Zahlen sind?
      äh, ich sehe da auch welche, jeweils nach einem Prozentzeichen.

      aaaaaaaarrrrgh! Ich werde verrückt! Das darf doch nicht wahr sein.

      Soooooo: /^\d{1,3}/.

      der Hola

      PS: ich habe keinen blassen schimmer, wie ich meine dummen mathe-hausaufgaben schaffen soll so verwirrt wie ich bin..l.,asolik3

      1. Hi,

        Soooooo: /^\d{1,3}/.

        der String muss also mit ein bis drei Ziffern beginnen. Das ist bereits bei einer Ziffer gegeben; Du solltest der Performance wegen die Bereichsprüfung entfernen.

        PS: ich habe keinen blassen schimmer, wie ich meine dummen mathe-hausaufgaben schaffen soll so verwirrt wie ich bin..l.,asolik3

        Hm, vielleicht solltest Du Dich auf die Hausaufgaben _konzentrieren_, anstatt Dich mit Programmierung zu beschäftigen?

        Cheatah

        --
        X-Will-Answer-Email: No
        X-Please-Search-Archive-First: Absolutely Yes
        1. Hola,

          Soooooo: /^\d{1,3}/.
          der String muss also mit ein bis drei Ziffern beginnen. Das ist bereits bei einer Ziffer gegeben; Du solltest der Performance wegen die Bereichsprüfung entfernen.

          ehmm - du meinst "/^\d{3}/"? Da hast du recht - ob man da jedoch richtig
          viel von der Perfomance rausholt - da wäre ich mir nicht so sicher ;)

          PS: ich habe keinen blassen schimmer, wie ich meine dummen mathe-hausaufgaben schaffen soll so verwirrt wie ich bin..l.,asolik3
          Hm, vielleicht solltest Du Dich auf die Hausaufgaben _konzentrieren_, anstatt Dich mit Programmierung zu beschäftigen?

          Da hast du recht. Ich habe vorhin schon eine weile drüber gegrübelt
          und 5 DIN-A-4-Seiten vollgekritzelt, anschließend mein tolles
          http://education.ti.com/us/product/software/derive/features/features.html
          angeworfen, doch das half mir auch nicht wirklich weiter (hmmm...)

          ABB  -  ACE  =  DE
            +       -      +
           DF   +  BCB  =  BGB
            =       =      =
           AAB     DFD  =  BAH

          Jeder Buchstabe stellt eine Ziffer dar. Ist eigentlich ganz einfach,
          aber irgendwie - bin ich heute strunz. Wirklich strunz.

          Naja, falls mir bis heute nacht nichts ordentliches einfällt, schreibe
          ich mir ein kleines perl-scriptchen zusammen, was alle erdenkbaren
          Lösungen ausrechnen soll ;-)

          ... obwohl das so gesehen unsinn ist...

          naja, was solls ;),

          dreHola

          1. Hi,

            ABB  -  ACE  =  DE
              +       -      +
            DF   +  BCB  =  BGB
              =       =      =
            AAB     DFD  =  BAH

            Jeder Buchstabe stellt eine Ziffer dar. Ist eigentlich ganz einfach,
            aber irgendwie - bin ich heute strunz. Wirklich strunz.

            Kleiner Hinweis:
            Betrachte die letzten Ziffern von ABB + DF = AAB, also B + F = B. Welche Werte kann F wohl annehmen? ;-)

            cu,
            Andreas

            --
            MudGuard? Siehe http://www.Mud-Guard.de/
            Fachfragen per E-Mail halte ich für unverschämt und werde entsprechende E-Mails nicht beantworten. Für Fachfragen ist das Forum da.
            1. Moin,

              Kleiner Hinweis:
              Betrachte die letzten Ziffern von ABB + DF = AAB, also B + F = B. Welche Werte kann F wohl annehmen? ;-)

              0

              aber es gibt nunmal einen Haufen anderer Variabelchen dadrin. Ich
              habe jetzt vor 5 Minuten wieder angefangen zu grübeln (im Fernsehen
              laufen so tolle sachen ;-) - und irgendwie wird's nix mehr mit mir -
              naja, ich probiere jetzt mal mehr oder weniger logisch rum (B=7,D=2,
              A=9 z.B. scheint auf den ersten Blick ganz nett aus).

              so long,

              dreHola

          2. Hi,

            Soooooo: /^\d{1,3}/.
            Das ist bereits bei einer Ziffer gegeben;
            ehmm - du meinst "/^\d{3}/"?

            nein, eigentlich meinte ich ^\d{1}, welches sich noch weiter optimieren ließe.

            ob man da jedoch richtig viel von der Perfomance rausholt - da wäre ich mir nicht so sicher ;)

            Kommt darauf an, wie oft die RegExp kompiliert werden muss.

            ABB  -  ACE  =  DE
              +       -      +
            DF   +  BCB  =  BGB
              =       =      =
            AAB     DFD  =  BAH

            Dir ist mindestens ein Übertragunsfehler unterlaufen - in der letzten Zeile fehlt ein Operator. Wahrscheinlich sind aber noch mehr Fehler enthalten, denn nach kurzem Überschlagen folgere ich, dass in obiger Matrix A=E sein muss.

            Cheatah

            --
            X-Will-Answer-Email: No
            X-Please-Search-Archive-First: Absolutely Yes
            1. Hallo,

              Soooooo: /^\d{1,3}/.
              Das ist bereits bei einer Ziffer gegeben;
              ehmm - du meinst "/^\d{3}/"?
              nein, eigentlich meinte ich ^\d{1}, welches sich noch weiter optimieren ließe.

              hm - das findet eine einzelne Ziffer am Anfang des Strings. Ich möchte
              aber einen String finden, der min. 1 und maximal 3 Ziffern beinhaltet.

              ^\d{1,3}$

              währe wohl das richtige - denke ich mal.

              ob man da jedoch richtig viel von der Perfomance rausholt - da wäre ich mir nicht so sicher ;)
              Kommt darauf an, wie oft die RegExp kompiliert werden muss.

              das Scriptbeispiel war so etwa alles wichtige der Datei. Das heißt: 1x.

              ABB  -  ACE  =  DE
                +       -      +
              DF   +  BCB  =  BGB
                =       =      =
              AAB     DFD  =  BAH
              Dir ist mindestens ein Übertragunsfehler unterlaufen - in der letzten Zeile fehlt ein Operator.

              Jawohl - das ist wahr. Ein - muss zwischen AAb und DFD.

              Wahrscheinlich sind aber noch mehr Fehler enthalten, denn nach kurzem Überschlagen folgere ich, dass in obiger Matrix A=E sein muss.

              So weit bin ich unter anderem auch schon ;-) darüberhinaus:

              A = E
              B = A-D
              C = B-D
              D = A-B
              E = 0.5*B
              F = 0
              G = C+D
              H = E+B

              zumindest so ähnlich. Dummerweise zeigt das nur die Relationen der
              einzelnen "Variablen" (was sie imho ja nicht im klassischen sinne sind) - irgendwas rausbekommen tut man dadurch erstmal nicht (falls ich nicht wieder "auf dem schlauch" stehe).

              Gruß,

              dreHOla

              1. Hi,

                hm - das findet eine einzelne Ziffer am Anfang des Strings. Ich möchte
                aber einen String finden, der min. 1 und maximal 3 Ziffern beinhaltet.

                ^\d{1,3}$

                ersetze "beinhaltet" durch "aus ... besteht", dann stimmt diese RegExp.

                Wahrscheinlich sind aber noch mehr Fehler enthalten, denn nach kurzem Überschlagen folgere ich, dass in obiger Matrix A=E sein muss.
                So weit bin ich unter anderem auch schon ;-) darüberhinaus:
                A = E

                Normalerweise ist bei solchen Rätseln derartiges ausgeschlossen. Bist Du sicher, dass zwei Symbole die selbe Ziffer repräsentieren dürfen?

                einzelnen "Variablen" (was sie imho ja nicht im klassischen sinne sind)

                Doch, wenn Du z.B. "AAB" als "100*A+10*A+B" ansiehst. Alle A-H  [0,9]|N, und schon geht's mit "klassischer" Mathematik.

                Cheatah

                --
                X-Will-Answer-Email: No
                X-Please-Search-Archive-First: Absolutely Yes
                1. Hola,

                  hm - das findet eine einzelne Ziffer am Anfang des Strings. Ich möchte
                  aber einen String finden, der min. 1 und maximal 3 Ziffern beinhaltet.
                  ^\d{1,3}$
                  ersetze "beinhaltet" durch "aus ... besteht", dann stimmt diese RegExp.

                  jep. ok :)

                  Wahrscheinlich sind aber noch mehr Fehler enthalten, denn nach kurzem Überschlagen folgere ich, dass in obiger Matrix A=E sein muss.
                  So weit bin ich unter anderem auch schon ;-) darüberhinaus:
                  A = E
                  Normalerweise ist bei solchen Rätseln derartiges ausgeschlossen.

                  Was spricht dagegen, dass zwei Variablen den selben Wert haben?

                  Bist Du sicher, dass zwei Symbole die selbe Ziffer repräsentieren dürfen?

                  ja. Übrigens habe ich dieses "Rätsel" anscheinend falsch abgeschrieben, es war minimal anders ;)

                  einzelnen "Variablen" (was sie imho ja nicht im klassischen sinne sind)
                  Doch, wenn Du z.B. "AAB" als "100*A+10*A+B" ansiehst. Alle A-H  [0,9]|N, und schon geht's mit "klassischer" Mathematik.

                  jo. Nach diesem Muster habe ich auch alle 9 Gleichungen mal eingetippt und versucht, mal meinen Comp. das Ding z.B. zu Variable A ausrechnen zu lassen. Scheinbar hat das programm das nicht geschafft :/

                  gruß,

                  drehola

                  1. Hi,

                    Normalerweise ist bei solchen Rätseln derartiges ausgeschlossen.
                    Was spricht dagegen, dass zwei Variablen den selben Wert haben?

                    Üblicherweise die Regeln dieser Rätsel - gleiches Symbol = gleiche Ziffer, verschiedene Symbole = verschiedene Ziffern.

                    jo. Nach diesem Muster habe ich auch alle 9 Gleichungen mal eingetippt und versucht, mal meinen Comp. das Ding z.B. zu Variable A ausrechnen zu lassen. Scheinbar hat das programm das nicht geschafft :/

                    Das könnte daran liegen, daß im Rätsel nur 6 Gleichungen (mit 9 Zahlen) enthalten sind - 3 waagerechte und 3 senkrechte. ;-)

                    cu,
                    Andreas

                    --
                    MudGuard? Siehe http://www.Mud-Guard.de/
                    Fachfragen per E-Mail halte ich für unverschämt und werde entsprechende E-Mails nicht beantworten. Für Fachfragen ist das Forum da.
                    1. Hi,

                      Normalerweise ist bei solchen Rätseln derartiges ausgeschlossen.
                      Was spricht dagegen, dass zwei Variablen den selben Wert haben?
                      Üblicherweise die Regeln dieser Rätsel - gleiches Symbol = gleiche Ziffer, verschiedene Symbole = verschiedene Ziffern.

                      Nun, wir haben ja bereits festgestellt, dass diese Symbole ohne weiteres als Variablen betrachtet werden können. Und bei Variblen ist es ganz und gar nicht unüblich, dass sie mal den gleichen Wert haben - vor allem in der nicht-mathematik (=programmierung...) :)

                      jo. Nach diesem Muster habe ich auch alle 9 Gleichungen mal eingetippt und versucht, mal meinen Comp. das Ding z.B. zu Variable A ausrechnen zu lassen. Scheinbar hat das programm das nicht geschafft :/
                      Das könnte daran liegen, daß im Rätsel nur 6 Gleichungen (mit 9 Zahlen) enthalten sind - 3 waagerechte und 3 senkrechte. ;-)

                      ehm - ja, genau, 6 gleichungen ;)

                      gruß,

                      hola

          3. Moin die Welt,

            tada:

            866 - 838 = 28
               +     -    +
              20  + 636 = 656
              =      =     =
              886  - 202 = 684

            :) - kaum mal 5 Minuten dem Prozessor richtig strom gegeben, da
             kriegt man es doch noch raus ;-)

            na dann - soweit ist das "Tagesziel" erreicht *g* ;)

            mucho spaßo aqui noch,

            drehola