Thread Reguläre Ausdrücke auf Textdatei anwenden (5 answers)
Opened by Phobeus at 2004-06-26 21:53

Phobeus
 2004-06-26 21:53
#83747 #83747
User since
2004-06-26
3 Artikel
BenutzerIn
[Homepage] [default_avatar]
Hi,
das Ganze ist sicherlich eine Anfänger-Frage, allerdings bin ich auch noch ein Anfänger, der nun versucht hat nach den ersten Übungen ein kleines Tool zu schreiben und dabei kurz vorm Nervenzusammenbuch steht. die Grundidee ist simple eine Textdatei wird eingelesen, verschiedene RegExp drauf angewendet und dann soll das ganze wieder gespeichert werden. Ich kann zwar die RegExp wunderbar auf $_ anwenden, scheitere allerdings daran, diese nicht nur auf die erste Ziele, sondern allen Zeilen der Datei anzuwenden.
Daher hier eine simpler Auszug aus der Problemregion:
Code: (dl )
1
2
3
4
5
6
#!/usr/bin/perl -w
open SOURCE,"<$ARGV[0]";
@zeilen = <SOURCE>;
@zeilen =~s/ü/&ü/g;
close SOURCE;
print @zeilen;

Ich kann zwar wunderbar mit @zeilen den Inhalt der Datei auflisten allerdings wird der Aufruf des RegExp kommentiert wie folgt:
Quote
Applying substitution (s///) to @array will act on scalar(@array) at ./xmlsc_to2 line 5.
Can't modify array dereference in substitution (s///) at ./xmlsc_to2 line 5, near "s/ü/\&\ü/g;"

Wie mache ich es am besten, dass ich den kompletten Inhalt einer Datei einlese und dann meine Veränderungen daran durchführe? Muss ich wirklich die Datei zeilenweise mit einer Schleife durcharbeiten?

Thx,
Florian

View full thread Reguläre Ausdrücke auf Textdatei anwenden