Also, was da alles geht. Wenn man das einem Informatiker vorlegt, schlagt der wahrscheinlich alle Hände üner dem Kopf zusammen ;-)
Ach ja, diese Warmduscher... ;-)
Hier mal, was ich alles schon probiert habe:
// $param =~ s/\cM\n/<br>/g; # von Matt Wright oder so, geht aber auch nicht!
In Perl gibt es immer viele Wege, ein Problem zu loesen. Manche sind sauberer, andere weniger sauber, und bei manchen Moeglichkeiten ist es eher Gluecksache, wenn sie funktionieren. Wenn Du die schlechteste dieser Moeglichkeiten suchst, dann solltest Du in Matt-Wright-Scripts nachschauen, ansonsten aber besser nicht.
// $param =~ s/(\015\012\012\015\015\012)/\n/g; $param =~ s/\n\n/<br>/g; # cheatahs version
Leider werden vom Schwanzabschneider dieses Forums Pipe-Zeichen (|) einfach weggeschmissen, deshalb stimmt das so nicht, wie es da steht. Eigentlich stimmt es auch nach Ergaenzung der Pipes nicht ganz. Ist das wirklich von Cheatah? Meines Wissens haben wir nach langen Diskussionen zu dieser Variante gefunden:
Alle Zeilenumbrueche, egal wie codiert (unterscheidet sich zwischen DOS, Mac und Unix),
in \n umwandeln (wobei der echte Wert von \n vom Server-Betriebssystem abhaengt)
$param =~ s/\015\012|\015|\012/\n/g;
falls noetig, alle \n in HTML-Zeilenumbrueche umwandeln
$param =~ s/\n/<br>/g;
Irgendwie glaube ich nämlich er will mich verarschen. schreiben ich: $param =~ s/\n/br>/g; dann ersetzt er jede Zeilenschaltung durch br>, aber wenn ich dann das '<' noch dazugebe, dann macht er gar nix, im Quelltext steht dann einfach ein \n(Zeilenschaltung), wo eigentlich das
Kann ich nicht nachvollziehen. Aber ein Tip: Das \ vor < und > kannst Du weglassen, da diese Zeichen keine Sonderbedeutung in regulaeren Ausdruecken haben. Ist aber auch nicht falsch.
HTH && So long