D
Damian
The following works as expected (examples):
my $re_d = qr|(\d),(\d),(\d)|;
my $s = "abcde1,2,3hk4,5,6hkgk7,8,9dfdfdfd";
while ($s =~ m|$re_d|g) {
print "[$1 $2 $3]\n";
}
And prints:
[1 2 3]
[4 5 6]
[7 8 9]
However, if I try to capture the $1, $2, ... matches ot an array, it
turns into na infinate loop:
my $re_d = qr|(\d),(\d),(\d)|;
my $s = "abcde1,2,3hk4,5,6hkgk7,8,9dfdfdfd";
my @r;
while (@r = $s =~ m|$re_d|g) {
print "[@r]\n";
}
And keeps printing:
[1 2 3 4 5 6 7 8 9]
[1 2 3 4 5 6 7 8 9]
[1 2 3 4 5 6 7 8 9]
[1 2 3 4 5 6 7 8 9]
[1 2 3 4 5 6 7 8 9]
[1 2 3 4 5 6 7 8 9]
my $re_d = qr|(\d),(\d),(\d)|;
my $s = "abcde1,2,3hk4,5,6hkgk7,8,9dfdfdfd";
while ($s =~ m|$re_d|g) {
print "[$1 $2 $3]\n";
}
And prints:
[1 2 3]
[4 5 6]
[7 8 9]
However, if I try to capture the $1, $2, ... matches ot an array, it
turns into na infinate loop:
my $re_d = qr|(\d),(\d),(\d)|;
my $s = "abcde1,2,3hk4,5,6hkgk7,8,9dfdfdfd";
my @r;
while (@r = $s =~ m|$re_d|g) {
print "[@r]\n";
}
And keeps printing:
[1 2 3 4 5 6 7 8 9]
[1 2 3 4 5 6 7 8 9]
[1 2 3 4 5 6 7 8 9]
[1 2 3 4 5 6 7 8 9]
[1 2 3 4 5 6 7 8 9]
[1 2 3 4 5 6 7 8 9]