Andreas-Lindig: korrektes escapen in preg_match und preg_replace

Beitrag lesen

Hallo Forum,

wie muß ich in den Funktionen preg_match, preg_match_all und preg_replace nach "" suchen?
diese Versionen ergeben immer Fehlermeldungen:

$this->eingabe ist ein eingegebener Wert - bei diesem Test eben "", das ist mit echo überprüft.

| if(preg_match("/\/", $this->eingabe))
| echo '\ gefunden';
|
| Meldung:
| Warning: No ending delimiter '/' found

| if(preg_match("/(.*)\(.*)/", $this->eingabe))
| echo '\ gefunden';
|
| Meldung:
| Warning: Compilation failed: unmatched parentheses at offset 8

diese Version hingegen funktioniert:

| if(preg_match("/\\/", $this->eingabe))
| echo '\ gefunden';

kommt mir allerdings etwas seltsam vor. Meiner Meinung nach suche ich hier nach "\"
Eine Übrprüfung mit preg_match_all() ergibt aber in der Tat soviele Treffer von "" wie ich eingegeben habe. Nun will ich es aber grundsätzlich wissen, denn ich muß ja auch in Zukunft mal andere Zeichenfolgen korrekt escapen. Wie also wird "\\" aus "" ?

Gruß, Andreas