Michael Staehle: @ erstzen in Perl

Beitrag lesen

Hallo alle,

das kapier ich jetzt aber nicht ganz

Kleines Script:

$test1 = 'michael@staehle'; $test2 = 'michael@staehle'; $test3 = 'michael@staehle';

$test1 =~ s/@/\@/g;
$test2 =~ s/@/\@/g;
$test3 =~ s/@/\@/g;

print $test1 . "\n"; print $test2 . "\n"; print $test3 . "\n";

Ergibt drei Mal "michael@staehle".

Die Begruedung wurde schon geliefert.

Das Problem ist, dass es man \ bei @ setzten sollte aber nicht muss, aber unter Unix in einer Bash liefert:

echo michael@staehle | sed -e "s/@/\@/" korrekt
echo michael@staehle | sed -e "s/@/\@/" korrekt
echo michael@staehle | sed -e "s/@/\@/" falsch
echo michael@staehle | sed -e "s/@/\@/" falsch

Daher sollte man zur Lesbarkeit und Wartbarkeit seines Codes immer den \ mitfuehren.

Ciao Micha

@ würde doch @ ausgeben, nicht wahr?
also würde doch \@ -> @ ausgeben oder ?

also warum is dann $eingabe =~ s/@/\@/ falsch ?