backslash-reg. Ausdrücke (PHP)

Bash, Shell, PHP, Python, Perl, CGI
debian inside
Posts: 65
Joined: 2003-01-30 22:46

backslash-reg. Ausdrücke (PHP)

Post by debian inside »

Code: Select all

$link = preg_replace("°(http://)(.*)(\)°i","$1$2",$link);
hab da ein kleines problem mit den ''
normalerweise müsste doch das erste dem zweitem die Sonderfunktion nehmen und dadurch nimmt das zweite dem ) nicht die sonderfunktion

hab ich zumindest gedacht
funktioniert aber nicht :(
[tom]
Posts: 656
Joined: 2003-01-08 20:10
Location: Berlin

Re: backslash-reg. Ausdrücke (PHP)

Post by [tom] »

Versuchs mal mit nem 3. ;-)

[TOM]
debian inside
Posts: 65
Joined: 2003-01-30 22:46

Re: backslash-reg. Ausdrücke (PHP)

Post by debian inside »

danke klappt tatsächlich


finde ich aber etwas unlogisch
[tom]
Posts: 656
Joined: 2003-01-08 20:10
Location: Berlin

Re: backslash-reg. Ausdrücke (PHP)

Post by [tom] »

debian inside wrote:danke klappt tatsächlich
Jepp, bin ich mal vor einiger Zeit drüber gestolpert. :)

[TOM]
majortermi
Userprojekt
Userprojekt
Posts: 916
Joined: 2002-06-17 16:09

Re: backslash-reg. Ausdrücke (PHP)

Post by majortermi »

debian inside wrote:danke klappt tatsächlich


finde ich aber etwas unlogisch
Das liegt daran, das sich der Ausdruck in "Anführungszeichen" befindet.
Normalerweise wird ein "" zu '' ausgewertet, also wird "\)" zu ')'.
"\)" hingegen wird dann zu '\)', damit stimmt es dann wieder.
Im Prinzip müsste man wahrscheinlich sogar schreiben "\\)", allerdings macht der eine weniger nichts, weil ")" keine besondere Bedeutung hat (außer später bei der Verwendung als RegExp).
Erst nachlesen, dann nachdenken, dann nachfragen... :)
Warum man sich an diese Reihenfolge halten sollte...