• Apfeltalk ändert einen Teil seiner Allgemeinen Geschäftsbedingungen (AGB), das Löschen von Useraccounts betreffend.
    Näheres könnt Ihr hier nachlesen: AGB-Änderung
  • Viele hassen ihn, manche schwören auf ihn, wir aber möchten unbedingt sehen, welche Bilder Ihr vor Eurem geistigen Auge bzw. vor der Linse Eures iPhone oder iPad sehen könnt, wenn Ihr dieses Wort hört oder lest. Macht mit und beteiligt Euch an unserem Frühjahrsputz ---> Klick

PHP preg_replace

ma.buso

Châtaigne du Léman
Registriert
16.04.05
Beiträge
820
Ich versuche gerade, aus Texten irrelevante Worte rauszuziehen.

Dazu hab ich zwei Arrays gefunden mit deutschen und engl. "Stoppwörtern":
Code:
// [...]
      $stopwords["de"][] = "dazu";
      $stopwords["de"][] = "dem";
      $stopwords["de"][] = "den";
      $stopwords["de"][] = "denn";
// [...]

Weiters will ich dann die Wörter rausschmeißen:

Code:
$Search[] = "=(\s[A-Za-z]{1,2})\s=";
$Search[] = "= " . implode(" | ", $stopwords["de"]) . " =i";
$Search[] = "= " . implode(" | ", $stopwords["en"]) . " =i";
$Search[] = "= +=";

$Replace[] = " ";
$Replace[] = " ";
$Replace[] = " ";
$Replace[] = " ";

$String = " " . str_replace(" ", "  ", $String) . " ";
$String = trim(preg_replace($Search, $Replace, $String));

Komisch nur, dass er nicht alle rausschmeißt. Da handelt es sich auch nicht um bestimmte örter, die er komplett drin lässt, sondern er schmeißt z.B. ein Paar "dann" raus und ein Paar lässt er drin.
Vielleicht kann mir jemand sagen, wo der Fehler liegt.
 

mewX

Wohlschmecker aus Vierlanden
Registriert
26.12.06
Beiträge
241
So vllt.?
Code:
$Search[] = "=[" . implode("|", $stopwords["de"]) . "]=i";
$Search[] = "=[" . implode("|", $stopwords["en"]) . "]=i";
Sonst setzt er vermutlich die RegExps nichts richtig zusammen..
 

ma.buso

Châtaigne du Léman
Registriert
16.04.05
Beiträge
820
so geht's gleich garnicht :) außerdem würde er so aus den wörtern, welche die stoppwörter enthalten diese rauslöschen, sodass man nur noch kauderwälsch übrig hätte.

habe jetzt erstmal alle wörter mit weniger als 4 buchstaben gekickt und auf einmal geht's pima - das verstehe wer will .... ;)