Schrift
Wiki:Tipp zum Debugging: use Data::Dumper; local $Data::Dumper::Useqq = 1; print Dumper \@var;
[thread]12604[/thread]

mehrzeilige muster ?



<< >> 5 Einträge, 1 Seite
acco
 2008-10-08 17:43
#115281 #115281
User since
2008-10-08
3 Artikel
BenutzerIn
[default_avatar]
Hi,

bin neu hier deshalb erstmal Hallo an alle.
Meine Frage betrifft reguläre Ausdrücke .. wie kann ich in Perl mehrzeilige Muster angeben?
also wie kann ich zb

a
b
c
d
e

alles was zwischen a und e steht erfassen? Hab gelesen man kann Dateien als einen String einlesen, damit müsste es ja gehen.
Wär super wenn mir einer helfen könnte.
Danke für die Mühe im Vorraus.
Gruß
acco
Crian
 2008-10-08 17:56
#115283 #115283
User since
2003-08-04
5866 Artikel
ModeratorIn
[Homepage]
user image
Vielleicht hilft dir sowas wie

while (<>) {
print if /^a$/ .. /^e$/;
}


weiter
s--Pevna-;s.([a-z]).chr((ord($1)-84)%26+97).gee; s^([A-Z])^chr((ord($1)-52)%26+65)^gee;print;

use strict; use warnings; Link zu meiner Perlseite
acco
 2008-10-08 18:38
#115304 #115304
User since
2008-10-08
3 Artikel
BenutzerIn
[default_avatar]
Das hilft mir allerdings erstmal weiter.
So ähnlich wollt ichs auch probieren, aber da hab mich wohl irgendwie verwurstelt...
Jedenfalls danke für die schnelle Antwort.
Gruß
acco
acco
 2008-10-08 18:58
#115306 #115306
User since
2008-10-08
3 Artikel
BenutzerIn
[default_avatar]
Hmmm, vielleicht war ich ein bißchen vorschnell.
Ich versuche mein Beispiel mal zu verkomplizieren:

bcd
a bcd e a b
c
d
e
b c d

Hier soll nun NUR text zwischen a und e verändert werden.
Also Ausgabe:

bcd
b c d

Geht das auch mit Schleifen?
Danke,
gruß
acco
nepos
 2008-10-08 19:43
#115308 #115308
User since
2005-08-17
1420 Artikel
BenutzerIn
[Homepage] [default_avatar]
Änder doch einfach die Regex von oben! /^a$/ matcht nur auf Zeilen, in denen nur das a steht. Wenn du eher "a ..." willst, dann mach z.B. /^a\s+/ draus.
<< >> 5 Einträge, 1 Seite



View all threads created 2008-10-08 17:43.