FHEM Forum

FHEM - Entwicklung => FHEM Development => Thema gestartet von: CoolTux am 07 September 2018, 11:52:09

Titel: makeReadingName() und Umlaute??
Beitrag von: CoolTux am 07 September 2018, 11:52:09
Hallo Rudi,

Die Funktion makeReadingName() ändert alle non-valid characters in einen _
Würdest Du auch einen Patch annehmen damit speziell Umlaute geändert werden z.B. ö in oe und ä in ae und so weiter?
Macht diese Änderung auch Sinn? Frage an Mitstreiter.


Grüße
Titel: Antw:makeReadingName() und Umlaute??
Beitrag von: hexenmeister am 07 September 2018, 12:02:48
Aus meiner Sicht ist das eine gute Idee.
Titel: Antw:makeReadingName() und Umlaute??
Beitrag von: rudolfkoenig am 07 September 2018, 12:19:49
Wird dein Patch auch andere Sprachen (wenigstens die aus der EU) unterstuetzen? :)
Titel: Antw:makeReadingName() und Umlaute??
Beitrag von: CoolTux am 07 September 2018, 12:30:19
Zitat von: rudolfkoenig am 07 September 2018, 12:19:49
Wird dein Patch auch andere Sprachen (wenigstens die aus der EU) unterstuetzen? :)

Leider nein. Aber ich verstehe worauf Du hinaus willst und ich gebe Dir Recht.
Ich habe es nun vorerst nur für mein Modul gelöst.

Falls von Interesse

sub makeReadingName($) {

    my ($name)      = @_;
   
   
    my %charHash    = ("ä" => "ae", "Ä" => "Ae", "ü" => "ue", "Ü" => "Ue", "ö" => "oe", "Ö" => "Oe", "ß" => "ss" );
    my $charHashkeys = join ("|", keys(%charHash));

    $name = "UNDEFINED" if(!defined($name));
    return $name if($name =~ m/^\./);

    $name =~ s/($charHashkeys)/$charHash{$1}/gi;
    $name =~ s/[^a-z0-9._\-\/]/_/gi;

    return $name;
}



Danke Dir
Titel: Antw:makeReadingName() und Umlaute??
Beitrag von: Thorsten Pferdekaemper am 11 September 2018, 15:05:07
Zitat von: rudolfkoenig am 07 September 2018, 12:19:49
Wird dein Patch auch andere Sprachen (wenigstens die aus der EU) unterstuetzen? :)
...und dabei Bulgarien und Griechenland nicht vergessen!
SCNR,
   Thorsten