printf oder etwas anderes?

printf oder etwas anderes?

am 20.07.2007 12:31:35 von Ferry Bolhar

Hallo,

ich habe einen String, der auch nicht darstellbare Zeichen
(ASCII Werte 0..31, 127...159) enthalten kann. Ich möchte
den gerne ausgeben, wobei die nicht darstellbaren Zeichen
durch Punkte (oder idealerweise durch ein anderes, von mir
vorgegebenes Zeichen) ersetzt werden.

[s]printf scheint das nicht zu unterstützen - gibt es in native
Perl eine andere Möglichkeit (außer mittels eines s///)?

LG, Ferry

--
Ing Ferry Bolhar
Magistrat der Stadt Wien - MA 14
A-1010 Wien
E-Mail: bol@adv.magwien.gv.at

Re: printf oder etwas anderes?

am 20.07.2007 12:40:30 von Bjoern Hoehrmann

* Ferry Bolhar wrote in de.comp.lang.perl.misc:
>ich habe einen String, der auch nicht darstellbare Zeichen
>(ASCII Werte 0..31, 127...159) enthalten kann. Ich möchte
>den gerne ausgeben, wobei die nicht darstellbaren Zeichen
>durch Punkte (oder idealerweise durch ein anderes, von mir
>vorgegebenes Zeichen) ersetzt werden.
>
>[s]printf scheint das nicht zu unterstützen - gibt es in native
>Perl eine andere Möglichkeit (außer mittels eines s///)?

Ausser `perldoc -f tr` nicht, nein. Zumindest nicht in einer
Weise die sinnvoll wäre (du könntest z.B. einen PerlIO layer
schreiben, aber das wäre wenig sinnvoll).
--
Björn Höhrmann · mailto:bjoern@hoehrmann.de · http://bjoern.hoehrmann.de
Weinh. Str. 22 · Telefon: +49(0)621/4309674 · http://www.bjoernsworld.de
68309 Mannheim · PGP Pub. KeyID: 0xA4357E78 · http://www.websitedev.de/

Re: printf oder etwas anderes?

am 20.07.2007 13:07:39 von Frank Seitz

Ferry Bolhar wrote:

> ich habe einen String, der auch nicht darstellbare Zeichen
> (ASCII Werte 0..31, 127...159) enthalten kann. Ich möchte
> den gerne ausgeben, wobei die nicht darstellbaren Zeichen
> durch Punkte (oder idealerweise durch ein anderes, von mir
> vorgegebenes Zeichen) ersetzt werden.
>
> [s]printf scheint das nicht zu unterstützen - gibt es in native
> Perl eine andere Möglichkeit (außer mittels eines s///)?

Für solche Zeichenersetzungen hat Perl tr///.

Grüße
Frank
--
Dipl.-Inform. Frank Seitz; http://www.fseitz.de/
Anwendungen für Ihr Internet und Intranet
Tel: 04103/180301; Fax: -02; Industriestr. 31, 22880 Wedel