NAME
Prty::TextFile - Textdatei als Array von Zeilen
BASE CLASS
DESCRIPTION
Ein Objekt der Klasse repräsentiert eine Textdatei als ein Array von Zeilen. Die Zeilen sind ihrerseits Objekte (per Default Objekte der Klasse Prty::TextFile::Line). Die Klasse stellt Methoden zur Manipulation des Arrays von Zeilen zur Verfügung.
METHODS
Konstruktor
new() - Konstruktor
Synopsis
$doc = $class->new($file,@opt);
$doc = $class->new(\$str,@opt);
$doc = $class->new(\@lines,@opt);
Description
Instantiiere ein Dokument-Objekt aus Datei $file, aus Text $text oder aus den Zeilen @lines und liefere eine Referenz auf dieses Objekt zurück.
Options
- -lineClass => $class (Default: 'Prty::TextFile::Line')
-
Klasse, auf die die Zeilen des Dokuments geblesst werden.
- -lineContinuation => $type (Default: keine Zeilenfortsetzung)
-
- 'backslash'
-
Endet eine Zeile mit einem Backslash, entferne Whitespace am Anfang der Folgezeile und füge den Rest zur Zeile hinzu.
Dies kann für eine Zeile unterdrückt werden, indem der Backslash am Ende der Zeile durch einen davorgestellten Backslash maskiert wird. In dem Fall wird statt einer Fortsetzung der Zeile der maskierende Backslash entfernt.
- 'whitespace'
-
Beginnt eine Zeile mit einem oder mehreren Leerzeichen oder TABs, wird sie zur vorhergehenden Zeile hinzugefügt. Die Leerzeichen und TABs am Zeilenanfang werden entfernt. Die Teile werden mit \n als Trenner zusammengefügt.
- -skip => $regex (Default: keiner)
-
Überlies Zeilen, die Regex $regex erfüllen.
Accessors
lines() - Liste der Zeilen
Synopsis
@arr|$arr = $doc->lines(\@lines);
Description
Liefere die Liste der Zeilen der Textdatei. Im Skalarkontext liefere eine Referenz auf die Liste.
Methods
dump() - Erzeuge externe Repräsentation
Synopsis
$str = $doc->dump($format);
$str = $doc->dump;
Description
Erzeuge eine externe Dokumentrepräsentation in Format $format für das gesamte Dokument und liefere diese zurück.
Formate
Siehe $ln->dump()
removeEmptyLines() - Entferne Leerzeilen am Anfang
Synopsis
$doc->removeEmptyLines;
Description
Entferne Leerzeilen am Anfang. Die Methode liefert keinen Wert zurück.
shiftLine() - Shifte erste Zeile
Synopsis
$line = $doc->shiftLine;
Description
Entferne die erste Zeile aus dem Dokument und liefere diese zurück.
VERSION
1.114
AUTHOR
Frank Seitz, http://fseitz.de/
COPYRIGHT
Copyright (C) 2017 Frank Seitz
LICENSE
This code is free software; you can redistribute it and/or modify it under the same terms as Perl itself.