Reguläre Ausdrücke: Bestimmte Wortanzahl in Zeilen
Pascal
- sonstiges
Hallo,
ich habe eine Frage zu Regulären Ausdrücke:
Ich habe einen langen Text, der mit Zeilenumbrüchen unterteilt ist. In diesem soll nun ein eine Stelle gefunden werden, die genau x Wörter (oder als Beispiel 80 Wörter) enthält, aber sich von einem Zeilenanfang bis zu einem beliebigen Zeilenende erstrecken soll. Also die gefundene Stelle muss an einem Zeilenanfang beginnen und an einem (anderen) Zeilenende enden und genau x Wörter enthalten.
Ist dies irgendwie möglich?
Vielen Dank für eure Hilfe!
Pascal
gudn tach!
Ich habe einen langen Text, der mit Zeilenumbrüchen unterteilt ist. In diesem soll nun ein eine Stelle gefunden werden, die genau x Wörter (oder als Beispiel 80 Wörter) enthält, aber sich von einem Zeilenanfang bis zu einem beliebigen Zeilenende erstrecken soll.
Ist dies irgendwie möglich?
ja. in perl z.b. so:
print $1."\n" if($str=~/(^(?:\w+\W+){80}$)/m);
beachte vor allem den m-modifier (erklaerung im verlinkten perl-manual).
prost
seth
Hallo,
vielen Dank für deine Antwort!
ja. in perl z.b. so:
print $1."\n" if($str=~/(^(?:\w+\W+){80}$)/m);
Aber dieser Ausdruck besagt doch, dass die 80 Wörter in einer Zeile stehen müssen, oder?
Ich such nach einer Möglichkeit, zu überprüfen, ob das 1. Wort an einem Zeilenanfang und das 80. an einem beliebigen Zeilenende steht. Das erste und das letzte Wort können durchaus in verschiedenen Zeilen stehen.
Vielen Dank!
Viele Grüße
Pascal
Aber dieser Ausdruck besagt doch, dass die 80 Wörter in einer Zeile stehen müssen, oder?
Nein, '\W' umfaßt durchaus auch Zeilenumbrüche.
Grüße
Aber dieser Ausdruck besagt doch, dass die 80 Wörter in einer Zeile stehen müssen, oder?
Nein, '\W' umfaßt durchaus auch Zeilenumbrüche.
Ja, aber werden sie nur dann geschluckt, wenn der m-Modifier angegeben ist.
Siechfred
Aber dieser Ausdruck besagt doch, dass die 80 Wörter in einer Zeile stehen müssen, oder?
Nein, '\W' umfaßt durchaus auch Zeilenumbrüche.Ja, aber werden sie nur dann geschluckt, wenn der m-Modifier angegeben ist.
Ja, stimmt. Vielen Dank, jetzt habe auch ich es hinbekommen.
Vielen Dank für eure Mühe!
Schönen Feiertag noch
Pascal
gudn tach!
Aber dieser Ausdruck besagt doch, dass die 80 Wörter in einer Zeile stehen müssen, oder?
Nein, '\W' umfaßt durchaus auch Zeilenumbrüche.
ack.
Ja, aber werden sie nur dann geschluckt, wenn der m-Modifier angegeben ist.
nein. der m-modifier hat nur einfluss auf ^ und $.
so gibt z.b.
print ord($1),"\n" if("foo\nbar"=~/(\W)/);
10 aus.
prost
seth