t3quill4b0y Geschrieben 17. November 2008 Geschrieben 17. November 2008 Hi, ich habe hier einen sql dump in welchem ich die Umlaute durch die HTML Tags ersetzten will. So hab ich das bisher gelöst: $line =~ s/ü/ü\;/og; $line =~ s/Ü/Ü\;/og; $line =~ s/ä/ä\;/og; $line =~ s/Ä/Ä\;/og; $line =~ s/ö/ö\;/og; $line =~ s/Ö/Ö\;/og; $line =~ s/ß/ß\;/og; Ich hätte das aber gerne in einer Zeile mit "and" verknüpft, was dann so aussehen sollte: ($line =~ s/ü/ü\;/og) and ($line =~ s/Ü/Ü\;/og) and ($line =~ /ä/ä\;/og) and ($line =~ s/Ä/Ä\;/og) and ($line =~ s/ö/ö\;/og) and ($line =~ s/Ö/Ö\;/og) and ($line =~ s/ß/ß\;/og); Beim zweiten Beispiel wird aber nur die erste klammer (ü's ersetzen) ausgeführt, woran liegt den das? Gruß und Danke
DevilDawn Geschrieben 17. November 2008 Geschrieben 17. November 2008 Beim zweiten Beispiel wird aber nur die erste klammer (ü's ersetzen) ausgeführt, woran liegt den das? Wie in den meisten Sprachen wird ein a AND b AND c nur ausgeführt wenn der Ausdruck a wahr ist. Ist er ist nicht, so ist der ganze Ausdruck eh falsch und der Vorgang wird abgebrochen. Was du hier willst ist kein logisches AND sondern du willst a und b und c Ausführen. Was du hier eigentlich willst ist eher ein use HTML::Entities use HTML::Entities; my $line = encode_entities($line); ~> perl -Mutf8 -MHTML::Entities -e '$line = "äöüÄÖÜ"; $line = encode_entities($line); printf("%s\n",$line);' äöüÄÖÜ
t3quill4b0y Geschrieben 17. November 2008 Autor Geschrieben 17. November 2008 Hi, danke für den schnellen Hinweis, ich werde mir merken das es dieses Modul gibt Sollte ich nochmal das Problem haben, werd ich es damit lösen! Gruß
Empfohlene Beiträge
Erstelle ein Benutzerkonto oder melde Dich an, um zu kommentieren
Du musst ein Benutzerkonto haben, um einen Kommentar verfassen zu können
Benutzerkonto erstellen
Neues Benutzerkonto für unsere Community erstellen. Es ist einfach!
Neues Benutzerkonto erstellenAnmelden
Du hast bereits ein Benutzerkonto? Melde Dich hier an.
Jetzt anmelden