ereg und case-sensitive

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

  • ereg und case-sensitive

    hallöle

    ich dachte immer, ereg sei im gegensatz zu eregi case-sensitive, nur bei mir nicht.
    if (ereg ("-+([a-z])",$superstring,$reg)) $superstring = ereg_replace ("-", "", $superstring);
    soll eigentlich den trennstrich bei wörtern nur dann entfernen, wenn hinter dem trennstrich ein kleiner buchstabe kommt, also bei System-leistung aber nicht bei System-Leistung. klappt aber nicht, der wird immer gelöscht. bitte nur lösungen, bei der ich nicht inder php.ini rumwursteln muss, da ich bei unserem kunden keinen zugriff darauf habe.
    gruss
    peter
    (die neue rechtschreibung: nur "Ich", "Bill Gates" und "Gott" werden grossgeschrieben)
    Nukular, das Wort ist N-u-k-u-l-a-r (Homer Simpson)
    Meine Seite

  • #2
    wenn nun aber nur ein einziger "richtiger" Bindestrich vorkommt, dann ersetz du ja automatisch alle, auch die "falschen" Bindestriche mit einem Großbuchstaben danach. Deshalb schon mal:
    PHP-Code:
    $superstring ereg_replace ("-+[a-z]"""$superstring); 
    ansonsten würde ich es wohl eher mit preg_replace machen.... aber dazu kann ich dir erst morgen früh was schreiben, da ich gerade wenig Zeit habe...

    Kommentar


    • #3
      mein Vorschlag von oben müßte eigentlich aber auch funktionieren, oder?! Bei mir hat es geklappt...

      Kommentar


      • #4
        jau, hast völlig recht. jetzt stehe ich nur vor folgenden problem:
        aus einer zeichenkette unbekannter länge alle trennstriche zu entfernen, wenn der folgende buchstabe klein geschrieben ist aber die nächsten drei buchstaben nicht "und" sind, also z.b.
        "Schmiede- und Gussteile" bleibt
        "Schmiede-hammer" zu "Schmiedehammer"
        "System-Administration" bleibt
        das alles in EINER schleife mit einer unbekannten anzahl von text-dateien, die ausgelesen werden. bis jetzt schmiert mir an der stelle regelmäßig der browser ab. ist das performancemäßig überhaupt zu schaffen?
        gruss
        peter
        Nukular, das Wort ist N-u-k-u-l-a-r (Homer Simpson)
        Meine Seite

        Kommentar


        • #5
          kommt natürlich auch auf den Umfang der Textdateien an, aber müßte eigentlich machbar sein. Für die Performance natürlich auch nicht das beste, wenn es viele Dateien und große dazu sind.
          Poste doch mal dein Code, dann gehen wir auf Fehlersuche...

          Kommentar


          • #6
            das grundsätzliche problem habe ich gelöst, zur kurzen erläuterung. ich arbeite gerade an einer dynamischen volltextsuche für domains, ausgehend vom stammverzeichnis werden alle html-dateien durchforstet, html- und javascript-code fliegt raus, und alle manuellen zeilenumbrüche werden ebenfalls entfernt. klappt alles wunderbar, nur wenn die menge der html-dateien zu gross ist, bekomme ich vom apache ein timeout (ist auf meinem lamp auf 30 sekunden eingestellt). da ich auf fremden servern keinen zugriff auf die httpd habe, bräuchte ich ein script, das die timeout-grenze erhöht. bastel gerade mit connection_timeout und set_time_limit rum. bin für jeden weiteren tipp dankbar.
            gruss
            peter
            Nukular, das Wort ist N-u-k-u-l-a-r (Homer Simpson)
            Meine Seite

            Kommentar


            • #7
              PHP-Code:
              if (!get_cfg_var('safe_mode')) 
                  {
                  
              set_time_limit(7200);  // Timeout auf zwei Stunden setzen
                  
              }
              else 
                  {
                  echo 
              "Kann Timelimit nicht setzen";
                  
              flush();
                  } 
              P.S.: Heisst das, daß du bei jeder Volltextsuche alle Dateien deiner Website durchsuchen willst?

              Kommentar


              • #8
                um gottes willen nein, ich schreibe die links und den text der html-dateien in eine db, bei kleineren domains ging das ja noch, aber die domain, die ich zu testzwecken nutze, hat etwa 100 seiten, da geht alles in die knie.
                gruss
                peter

                PS: danke für dein letztes script
                Nukular, das Wort ist N-u-k-u-l-a-r (Homer Simpson)
                Meine Seite

                Kommentar


                • #9
                  das hätte ich sonst auch als sehr verwegen angesehen

                  Kommentar

                  Lädt...
                  X