Mekoma: Text -> Ascii mit Perl wandeln

Hallo allerseits,

ihr könnt mir sicher helfen.

Wie kann ich aus einem Link:(www.test.de)
Mit Perl sein Ascii machen: (&34;...)

Also auf deutsch: ich möchte normalen Text in Ascii text umwandeln.

Danke im Voraus

M

  1. Hi,

    Also auf deutsch: ich möchte normalen Text in Ascii text umwandeln.

    ähm. "In ASCII" würde bedeuten, dass Du alle Zeichen >chr(127) entfernst oder ersetzt. "In ASCII-_Wert_" würde schon eher passen, aber auch das erlaubt keine Zeichen >chr(127) (das ist halt kein ASCII mehr). Was Du hier vermutlich meinst, sind HTML-Entities - und damit ein Fall für HTML::Entities.

    Cheatah

    --
    X-Will-Answer-Email: No
    X-Please-Search-Archive-First: Absolutely Yes
    1. Hallo,

      Danke für die schnelle Antwort,
      ich meine das http://www.torsten-horn.de/techdocs/ascii.htm

      A wird zu 65
      X - 88
      ...

      Das heist, ich würde für jedes Zeichen das machen:
      $text =~ s/A/65/g;
      $text =~ s/X/88/g;
      ...

      Aber es muss ja wohl einen kürzeren Weg geben :)

      MFG
      M

      1. Hi,

        $text =~ s/A/65/g;

        also nur durch den ASCII-Wert? Na, das kann lustig werden. Ist "123" nun chr(123), chr(1)+chr(23), chr(12)+chr(3) oder chr(1)+chr(2)+chr(3)?

        $text =~ s/X/88/g;
        Aber es muss ja wohl einen kürzeren Weg geben :)

        Sicher. perldoc perlre, nach /e und Klammerungen Ausschau halten, und in perldoc perlfunc die richtige Funktion finden.

        Cheatah

        --
        X-Will-Answer-Email: No
        X-Please-Search-Archive-First: Absolutely Yes
        1. Hallo Cheatah,

          $text =~ s/A/65/g;

          also nur durch den ASCII-Wert? Na, das kann lustig werden. Ist "123"
          nun chr(123), chr(1)+chr(23), chr(12)+chr(3) oder
          chr(1)+chr(2)+chr(3)?

          Deshalb nimmt man eine fixe Zahl von Stellen ;-) und am besten
          Hex-Codierung, da muss man nur zwei Zeichen reservieren anstatt
          drei.

          Grüße,
           CK

          --
          Keine Schneeflocke faellt je auf die falsche Stelle.
        2. Hast ja recht, es wird auch nicht durch 65 sondern dann durch 65, ersetzt, sodass eine liste nun 56,65,34,64,... ist und dann kein Prob darstellt.

          Mfg

          M

          1. Hi,

            Hast ja recht, es wird auch nicht durch 65 sondern dann durch 65, ersetzt, sodass eine liste nun 56,65,34,64,... ist und dann kein Prob darstellt.

            gut. Und wenn Du nicht mit RegExp arbeiten möchtest - was ich gut verstehen könnte - dann lies

            perldoc -f unpack

            Cheatah

            --
            X-Will-Answer-Email: No
            X-Please-Search-Archive-First: Absolutely Yes
      2. Vielen Dank, habs hinbekommen.