perl: Frage zu tr

Dieses Thema: "perl: Frage zu tr" im Forum "Ruby, php, Perl, Python ..." wurde erstellt von Xanti, 17.02.2006.

  1. Xanti

    Xanti Mouse Organist

    Dabei seit:
    05.09.2004
    Beiträge:
    1.855
    Zustimmungen:
    0
    Hallo,

    ich möchte unter perl Umlaute ersetzen wie folgt ersetzen:

    PHP:
    $base =~ s/ä/ae/ig;
    $base =~ s/ö/oe/ig;
    $base =~ s/ü/ue/ig;
    $base =~ s/ß/ss/g;
    Ist es möglich, dies auch durch tr zu lösen?

    PHP:
    $base =~ tr/ÄÖÜäöü/.../
    Leider scheitert es daran, dass ich jedes Zeichen nur durch ein Zeichen ersetzen kann und nicht durch ein Doppelzeichen. Vielleicht weiss jemand ne Lösung.

    Gruss, Phorus
     
  2. #2 Wolfgang, 17.02.2006
    Wolfgang

    Wolfgang Foren Gott

    Dabei seit:
    24.04.2005
    Beiträge:
    3.978
    Zustimmungen:
    0
    Ort:
    Erfurt
    Hallo
    Nein, tr kann nur einzelne Zeichen ersetzen.

    Gruß Wolfgang
     
  3. Xanti

    Xanti Mouse Organist

    Dabei seit:
    05.09.2004
    Beiträge:
    1.855
    Zustimmungen:
    0
    Ok, danke.

    Gruss, Phorus
     
  4. #4 Wolfgang, 17.02.2006
    Zuletzt bearbeitet: 17.02.2006
    Wolfgang

    Wolfgang Foren Gott

    Dabei seit:
    24.04.2005
    Beiträge:
    3.978
    Zustimmungen:
    0
    Ort:
    Erfurt
    Hallo
    Kleiner Tipp:
    Wenn du viele mögliche Ersetzungen machen musst, dann kann es hilfreich sein, sich dafür ein hash zu basteln.
    e.g.
    Code:
    my %h =( ä => ae, ü => ue, ß => ss);
    my $s="där üble string"; #:-)
       foreach my $k (keys %h){
                 $s=~s/$k/$h{$k}/g;
          }
    ...
    Besonders wenn du viele Teile hast und flexibel bleiben willst, brauchst du nur dein hash ergänzen.
    Auch mit einer map -Funktion gut zu realisieren. ;)

    Allerdings wird es etwas tricky, wenn du die Groß/Kleinschreibung beachten musst.
    Dann müsstest du noch auf Wortgrenzen matchen, und Worte die nur aus Großbuchstaben bestehen extra filtern.

    Gruß Wolfgang
     
  5. Xanti

    Xanti Mouse Organist

    Dabei seit:
    05.09.2004
    Beiträge:
    1.855
    Zustimmungen:
    0
    Gross-/Kleinschreibung ist egal, bei mir ist alles lc. Aber Danke für den Tipp, er verkürzt meinen Quellcode erheblich. :)

    Gruss, Phorus
     
Thema:

perl: Frage zu tr

Die Seite wird geladen...

perl: Frage zu tr - Ähnliche Themen

  1. Änfängerfrage zu Formularen und POST mit PERL

    Änfängerfrage zu Formularen und POST mit PERL: Hallo zusammen, ich möchte mittels Formular DB Einträge vornehmen lassen. Dabei poste ich mein Formular an mich selbst. (method=post) Nun habe...
  2. Perl: Newbie Frage print $

    Perl: Newbie Frage print $: Hallo, muss gerade ein einfach Perl Script anpassen.... möchte das er in eine Datei "#$ -S....." schreibt... hab folgendes im Quellcode...
  3. Perl: Curses::UI Frage

    Perl: Curses::UI Frage: Hallo zusammen Ist ein bisserl schwierig Informationen über das Modul zu finden, deshalb lerne ich es mehr oder weniger mittels Manpages &...
  4. Perl 6 offiziell vorgestellt

    Perl 6 offiziell vorgestellt: Wie erwartet, ist die Version C(hristmas) von Perl 6 veröffentlicht worden. Perl 6 stellt nicht, wie der Name suggeriert, einen Nachfolger von...
  5. Perl: 20 Jahre CPAN

    Perl: 20 Jahre CPAN: Vor 20 Jahren wurde das erste Modul in das Comprehensive Perl Archive Network (CPAN) hochgeladen, woran Neil Bowers mit einem Abriss der...