Re: @Sander: Frage zu regex - baseportal Forum - Web-Anwendungen einfach, schnell, leistungsfähig!
baseportal
English - Deutsch "Es gibt keine dummen Fragen - jeder hat einmal angefangen"

 baseportal-ForumDie aktuellsten 10, 30, 50, 100 Einträge anzeigen.  

 
 Ausgewählter Eintrag: Zur Liste 
    Beitrag von Pouraga (1396 Beiträge) am Dienstag, 16.März.2010, 14:59.
    Re: @Sander: Frage zu regex

      Ich bin mir nicht sicher ob es überhaupt eine Maskierung für das + gibt.


      Gehe den Maskierungsproblemen am besten aus dem Weg und nutze die alternative schreibweise als Array:

       get ["lg2_useragent","==",$getAgent], "$gv_logfile2";   # Sammeln der versch. Useragents zwecks Kontrolle
      


    Antworten

 Alle Einträge zum Thema: Zur Liste 
    Beitrag von Claus S. (1671 Beiträge) am Dienstag, 16.März.2010, 11:04.
    @Sander: Frage zu regex

      Hallo Sander,

      vor paar Jahren hast Du mir nachfolgendes Script gegeben. Damit prüfe ich auf bereits vorhandene Einträge.
      ______________________________________________________

      $getAgent = "";
          $getAgent = $_HTTP_USER_AGENT;
          $getAgent =~ s/ /\\ /g;
          $getAgent =~ s/\&/\\&/g;
      
          if ($getAgent eq "")        {         $getAgent = "leer";        }     get "lg2_useragent==$getAgent", "$gv_logfile2"; # Sammeln der versch. Useragents zwecks Kontrolle
          if ($_amount >= 1)        {         # Eintrag existiert schon         $lg2_count++;         mod "Id==$_id", ["lg2_count", $lg2_count],"$gv_logfile2";        }     else        {         # Eintrag wird hinzugefügt         put ["lg2_useragent", $_HTTP_USER_AGENT, "lg2_count", 1],"$gv_logfile2";                 }

      _____________________________________________________

      Das hat bisher soweit gut geklappt. In letzter Zeit kommen aber Einträge, die -soweit ich das überblicken konnte- ein Pluszeichen enthalten ( z.B. Mozilla/5.0 (compatible; Googlebot/2.1; +http://www.google.com/bot.html) )

      Diese werden nicht als doppelt erkannt, ich habe versucht, das hier einzufügen,
      $getAgent =~ s/\+/\\+/g;    
      
      hat aber nicht geklappt,
      hast Du vielleicht eine Idee?

      Danke und Gruss

      Claus S.

     Antworten

    Beitrag von Claus (4645 Beiträge) am Dienstag, 16.März.2010, 11:39.
    Re: @Sander: Frage zu regex

      Bin jetzt nicht sicher, aber es wird sicherlich auch weiterhin welche ohne "+" geben. Daher nußt Du wohl 2 Abfragen machen.

      mal so probieren:


      $getAgent = "";
          $getAgent = $_HTTP_USER_AGENT;
          $getAgent =~ s/ /\\ /g;
          $getAgent =~ s/\&/\\&/g;
      
          $getAgent2 = $_HTTP_USER_AGENT;     $getAgent2 =~ s/ +/\\ +/g;     $getAgent2 =~ s/\&/\\&/g;     if ($getAgent eq "")        {         $getAgent = "leer";        }     get "lg2_useragent==$getAgent or lg2_useragent==$getAgent2", "$gv_logfile2"; # Sammeln der versch. Useragents zwecks Kontrolle
          if ($_amount >= 1)        {         # Eintrag existiert schon         $lg2_count++;         mod "Id==$_id", ["lg2_count", $lg2_count],"$gv_logfile2";        }     else        {         # Eintrag wird hinzugefügt         put ["lg2_useragent", $_HTTP_USER_AGENT, "lg2_count", 1],"$gv_logfile2";
              
             }
      






      nur mal so als Idee...;)

      Gruesse

      Claus

     Antworten

    Beitrag von Claus (4645 Beiträge) am Dienstag, 16.März.2010, 11:48.
    Re: @Sander: Frage zu regex

      Upps, was vergesse...


      $getAgent = "";
      $getAgent2 = "";
          $getAgent = $_HTTP_USER_AGENT;
          $getAgent =~ s/ /\\ /g;
          $getAgent =~ s/\&/\\&/g;
      
          $getAgent2 = $_HTTP_USER_AGENT;     $getAgent2 =~ s/ +/\\ +/g;     $getAgent2 =~ s/\&/\\&/g;     if ($getAgent eq "" && $getAgent2 eq "")        {         $getAgent = "leer";         $getAgent2 = "leer";        }     get "lg2_useragent==$getAgent or lg2_useragent==$getAgent2", "$gv_logfile2"; # Sammeln der versch. Useragents zwecks Kontrolle     if ($_amount >= 1)        {         # Eintrag existiert schon         $lg2_count++;         mod "Id==$_id", ["lg2_count", $lg2_count],"$gv_logfile2";        }     else        {         # Eintrag wird hinzugefügt         put ["lg2_useragent", $_HTTP_USER_AGENT, "lg2_count", 1],"$gv_logfile2";
             }

      Bin aber nicht sicher, ob das so funzt, mußt mal testen..

      Gruesse

      Claus

     Antworten

    Beitrag von Claus S. (1671 Beiträge) am Dienstag, 16.März.2010, 17:20.
    Re: Re: @Sander: Frage zu regex

      Danke Claus,
      hat leider nicht funktioniert.
      Gruss
      Claus S.

     Antworten

    Beitrag von Pouraga (1396 Beiträge) am Dienstag, 16.März.2010, 14:59.
    Re: @Sander: Frage zu regex

      Ich bin mir nicht sicher ob es überhaupt eine Maskierung für das + gibt.


      Gehe den Maskierungsproblemen am besten aus dem Weg und nutze die alternative schreibweise als Array:

       get ["lg2_useragent","==",$getAgent], "$gv_logfile2";   # Sammeln der versch. Useragents zwecks Kontrolle
      

     Antworten

    Beitrag von Claus S. (1671 Beiträge) am Dienstag, 16.März.2010, 17:21.
    Re: Re: @Sander: Frage zu regex

      Danke Pouraga,

      habe es eingebaut und werde es beobachten.

      Gruss Claus S.

     Antworten


     
 Liste der Einträge von 6600 bis 6750:Einklappen Zur Eingabe 
Neueste Einträge << 10 | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | Neuere Einträge < Zur Eingabe  > Ältere Einträge | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 >> Älteste Einträge


Zurück zur Homepage

© baseportal.de. Alle Rechte vorbehalten. Nutzungsbedingungen



powered in 0.09s by baseportal.de
Erstellen Sie Ihre eigene Web-Datenbank - kostenlos!