Hallo zusammen,
vermutlich eine saudumme Frage:
Ich bearbeite gerade die Funktion
ShowFritzBoxValues (quasi als mein Einstieg in Perl). Dabei habe ich festgestellt, dass der Befehl
Zitat$JStr_Name = "ctlmgr_ctl r telcfg settings/Journal".$n."/Name"
den Telefonbucheintrag zumindest in der Shell korrekt mit deutschen Umlauten darstellt.
Funktioniert die Übergabe an Perl korrekt (d.h. wenn ich zum debuggen
print $JStr_Name; aufrufen würde, würde dann der Umlaut richtig dargestellt werden?
Mir ist klar, dass ich ein
ü in HTML als
ü darstellen sollte, daher stelle ich mir langfristig eine Funktion vor, die allgemein verfügbar ist und genau diese Umwandlung macht. Aber bevor ich zeitintensiv rumprobiere, frage ich einfach mal (ich denke Rudolf hätte dasselbe Problem ) ...
Danke + Gruß
PeMue
... gelöst, siehe mein Beitrag hier (//forum.fhem.de/index.php?t=post&reply_to=78267&rid=309). Schade, das Perl keine case Anweisung hat ...
Gruß PeMue
#------------------------------------------------------------------------------
# uml2html:
# replaces german "Umlaute" by appropriate html code
#
# call in fhem:
# {uml2html("Müller")}
#
# programming:
# Peter Mühlbeyer
#
# bugs/improvements:
# - none
#------------------------------------------------------------------------------
sub uml2html($)
{
my $instring = shift;
my $outstring = "";
my $zeichen;
for(my $i = 0; $i <= length($instring); $i++)
{
$zeichen = substr($instring,$i,1);
if (($zeichen) eq "ä") {
$outstring = $outstring . "ä";}
elsif (($zeichen) eq "ö") {
$outstring = $outstring . "ö";}
elsif (($zeichen) eq "ü") {
$outstring = $outstring . "ü";}
elsif (($zeichen) eq "Ä") {
$outstring = $outstring . "Ä";}
elsif (($zeichen) eq "Ö") {
$outstring = $outstring . "Ö";}
elsif (($zeichen) eq "Ü") {
$outstring = $outstring . "Ü";}
elsif (($zeichen) eq "ß") {
$outstring = $outstring . "ß";}
else {
$outstring = $outstring . $zeichen;}
# shorter: $outstring. = $outstring gives syntax error
}
return $outstring;
}
#----- uml2html ---------------------------------------------------------------