Regulärer Ausdruck für ereg_replace
Blub
- php
Hallo,
in PHP kenne ich mich eigentlich ganz gut aus. Das Einzige, was mir Probleme macht, sind Reguläre Ausdrücke.
Ich habe einen string ($string = "schwarz ---- weis: gelb ---- lila: blau ---- rot";) und würde gerne mittels eines regulären Ausdrucks "weis: " und "lila: " aus dem String entfernen.
Wie geht das?
Hallo Blub,
Wie geht das?
Es gibt sicher viele Weg, dies zu realisieren - reg. Ausdrücke ist ein möglicher aber bietet sich bei Deinem Probelm nicht besser str_replace an?
Mit freundlichem Gruß
Micha
Hi,
Es gibt sicher viele Weg, dies zu realisieren - reg. Ausdrücke ist ein möglicher aber bietet sich bei Deinem Probelm nicht besser str_replace an?
str_replace() ist meines Wissens ungeeignet, da der String weit aus länger ist, als den ich gepostet habe und es immer verschieden namen sind. Das einzige was immer gleich ist, ist irgendein Wort mit einem anschließenden Doppelpunkt und darauf ein Leerzeichen.
Hi!
str_replace() ist meines Wissens ungeeignet, da der String weit aus länger ist, als den ich gepostet habe und es immer verschieden namen sind.
Das wäre es meines Wissens geeigneter, eine adäquate Problembeschreibung hier zu posten.
off:PP
Hi,
Das wäre es meines Wissens geeigneter, eine adäquate Problembeschreibung hier zu posten.
Also etwas genauer:
$string = "01.01.2008 - 00:00:00 ---- user: blub ---- page: login ---- ip: 12.345.67.89";
Jetzt soll das raus kommen:
$ausgabe = "01.01.2008 - 00:00:00 ---- blub ---- login ---- 12.345.67.89";
Hi,
Das wäre es meines Wissens geeigneter, eine adäquate Problembeschreibung hier zu posten.
Also etwas genauer:
[...]
Jetzt soll das raus kommen:
[...]
nein, das ist eine Zielbeschreibung, keine Problembeschreibung.
Cheatah
Hi,
nein, das ist eine Zielbeschreibung, keine Problembeschreibung.
Durch diese Zielbeschreibung geht doch hervor, was ich will ..oder?!?
Hi,
nein, das ist eine Zielbeschreibung, keine Problembeschreibung.
Durch diese Zielbeschreibung geht doch hervor, was ich will ..oder?!?
ja, aber nicht was Dein Problem dabei ist, dies zu erreichen.
Cheatah
Mein Problem ist, das ich den reguläre Ausdruck für mein Vorhaben nicht kenne und den gerne von euch wüsste.
Hallo,
Das einzige was immer gleich ist, ist irgendein Wort mit einem anschließenden Doppelpunkt und darauf ein Leerzeichen.
$reduzierter_text = preg_replace('/[A-Za-z]+: /', '', $text);
Achtung Perl-Syntax.
Gruß
Hi,
$reduzierter_text = preg_replace('/[A-Za-z]+: /', '', $text);
> Achtung Perl-Syntax.
Hmm.. irgendwie geht das bei PHP nicht mit dem Ausdruck.
Hallo,
Hmm.. irgendwie geht das bei PHP nicht mit dem Ausdruck.
_Was_ geht nicht?
Gruß
Hi,
_Was_ geht nicht?
Er wird einfach nichts ersetzt.
Hallo,
Er wird einfach nichts ersetzt.
Was funktioniert daran nicht:
$text = '01.01.2008 - 00:00:00 ---- user: blub ---- page: login ---- ip: 12.345.67.89';
$reduzierter_text = preg_replace('/[A-Za-z]+: /', '', $text);
print $reduzierter_text;
Hast du darauf geachtet, dass die Funktion preg_replace heißt?
Außerdem wäre es deutlich hilfreicher (für die die dir helfen wollen), wenn du posten würdest, was nicht funktioniert.
Gruß
Hast du darauf geachtet, dass die Funktion preg_replace heißt?
oh hatte ich nicht. Danke