NetLook: ereg_replace - Sonderzeichen als Suchmuster

Hallo!

Ich habe folgenden Code:

Code:
ereg_replace("-", "_", $ChgBstb);
ereg_replace("(", "", $ChgBstb);
ereg_replace(")", "", $ChgBstb);
ereg_replace("?", "", $ChgBstb);
ereg_replace("&", "", $ChgBstb);
ereg_replace("+", "", $ChgBstb);
ereg_replace(""", "", $ChgBstb);
ereg_replace("'", "", $ChgBstb);
ereg_replace("ä", "ae", $ChgBstb);
ereg_replace("ö", "oe", $ChgBstb);
ereg_replace("ü", "ue", $ChgBstb);
ereg_replace(" ", "_", $ChgBstb);
ereg_replace("[", "", $ChgBstb);
ereg_replace("]", "", $ChgBstb);
ereg_replace(":", "", $ChgBstb);

Und folgende Fehlermeldung:

http://www.php.net/function.ereg-replace'>function.ereg-replace</a>]: REG_EPAREN in

Ich denke das hängt mit der Pattern-Syntax zusammen?!
Hatte hier mal geschaut:
http://de.php.net/manual/de/reference.pcre.pattern.syntax.php

Aber weis dennoch nicht, welches Zeichen ich jeweils davor setzen muss, könnt Ihr mir helfen oder habt eine guten Link zu einer deutschsprachigen Erklärung?

Gruß
NetLook

  1. echo $begrüßung;

    ereg_replace("-", "_", $ChgBstb);

    usw.

    Wenn du keine regulären Ausdrücke brauchst, und das braucht man bei einzelnen Zeichen nicht, solltest du normale Stringfunktionen nehmen. Geeignet scheinen mir strtr() (Variante 2) und str_replace(). Man kann diese Funktionen auch mit einem Array füttern, das alle Such- und Ersetzungswerte als Key-Value-Paare enthält. Mann muss dann die Funktion nur einmal aufrufen und bereits ersetzte Zeichen(folgen) werden nicht noch ein zweites Mal ersetzt.

    echo "$verabschiedung $name";

  2. Hallo,

    weg mit dem Mist!

    $a=array("-","ä","ö","ü"," ","(",")","?","&","+","\\","'","[","]",":");  
    $b=array("_","ae","oe","ue","_","");  
    $ChgBstb=str_replace($a,$b,$ChgBstb);
    

    und noch was: echo "\"";

    Gruß aus Berlin!
    eddi