Christian Kruse: -> (REGEXP) s/\n/<br>/g; geht nicht!

Beitrag lesen

Hoi,

my $tmp_test="";
foreach ($test)
{
     chomp ($_);
     $tmp_test = $tmp_test + $_ + "<br>";
}
$test = $tmp_test;

Hier die Erklärung:

Phantasie hast du ja ;-)

Die Zeichenfolge $text=~s/\n/<br>/g; durchsucht die
Variable $test nach Wagenrücklauf und ersetzt ihn in ein
HTML-Zeilenumbruch (<br>).

Nein. Nicht zwingend. Das kommt darauf an, wie die Zeilenumbrueche kodiert
sind.

foreach ist ein Befehl, der jede Zeile pro durchlauf in $_ kopiert.
$tmp_test ist eine Variable, an die Ständig die Zeile $_ ohne Wagenrücklauf
wegen chomp ($_) angehängt wird und zusätzlich ein <br>.
Im Grunde ersetzt meine Routine also auch alle Zeilenumbrüche in
ein <br>.

Nein. '$test' ist kein Array, sondern ein Skalar. Was du moechtest, koennte
man vielleicht etwa so erreichen:

foreach(split /\n/,$text) {
  $txt .= "$_<br>";
}

Was aber absolut unnoetig ist, weil ein s///sg reicht.

Gruesse aus dem schoenen LH,
 c.j.k