Thread Regexp 32 Bit Limitierung
(14 answers)
Opened by bloonix at 2006-10-20 15:52
[quote=renee,20.10.2006, 14:14]
Code: (dl
)
1 my $string = 'a' x 50_000 . 'skjd'; Edit: natürlich geht'ts noch einfacher: Code: (dl
)
my $regexp = qr-^((.{25000}){2})skjd$-; Dein erster Ausdruck tut nicht, was Du moechtest, glaube ich. Das liegt daran, dass \2 sich nicht auf den regulaeren Ausdruck (.) bezieht, sondern nur auf den exakten String, den (.) gematcht hat. Es muessten also alle 18001 Zeichen von der 32000ten bis zur 50000ten Stelle gleich sein. (Das ist in Deinem Beispiel der Fall, aber im allgemeinen nicht.) Vergleiche die folgenden beiden Beispiele: Code: (dl
)
1 print "yes0\n" if 'hallooo' =~ /^((.){2}\2{2})/; # Gibt nichts aus <!--EDIT|betterworld|1161354287--> Lieblingsmodule: IPC::System::Simple, Path::Class
|