[quote=Relais,20.02.2007, 15:29]Also wenn schon, dann aber
s!/*$!/!; # don't trust user input.
[/quote]
Oder doch so:
s!/*\z!/!; # really don't trust user input
Im Unterschied zu "\z" (was fuer das Ende des Strings steht) matcht das $ auch vor einem Zeilenumbruch, der am Ende des Strings steht. Wenn man also einen Dateinamen hat, der mit einem Zeilenumbruch aufhoert (sowas ist unter Un*x moeglich), wird
vor dem Zeilenumbruch der Schraegstrich eingefuegt. Mit \z kann das nicht passieren.
Lightman: Ob Du Ausrufezeichen, Klammern oder Schraegstriche (wie in Deinem obersten Posting) oder andere Zeichen (
außer Fragezeichen) verwendest, macht keinen Unterschied. Schraegstriche haben nur den Nachteil, dass man echte Schraegstriche im Pattern dann ersetzen muss, und das ganze Auf und Ab von Vorwaerts- und Rueckwaerts-Schraegstrichen kann man sehr schwer lesen.\n\n
<!--EDIT|betterworld|1172284374-->