1#!./perl -w 2 3BEGIN { 4 chdir 't' if -d 't'; 5 require './test.pl'; 6 set_up_inc('../lib'); 7} 8 9use strict; 10 11$_ = 'x' x 20; 12s/\d*|x/<$&>/g; 13my $foo = '<>' . ('<x><>' x 20) ; 14is($_, $foo); 15 16my $t = 'aaa'; 17 18$_ = $t; 19my @res; 20pos = 1; 21s/\Ga(?{push @res, $_, $`})/xx/g; 22is("$_ @res", 'axxxx aaa a aaa aa'); 23 24$_ = $t; 25@res = (); 26pos = 1; 27s/\Ga(?{push @res, $_, $`})/x/g; 28is("$_ @res", 'axx aaa a aaa aa'); 29 30$_ = $t; 31@res = (); 32pos = 1; 33s/\Ga(?{push @res, $_, $`})/xx/; 34is("$_ @res", 'axxa aaa a'); 35 36$_ = $t; 37@res = (); 38pos = 1; 39s/\Ga(?{push @res, $_, $`})/x/; 40is("$_ @res", 'axa aaa a'); 41 42$a = $t; 43@res = (); 44pos ($a) = 1; 45$a =~ s/\Ga(?{push @res, $_, $`})/xx/g; 46is("$a @res", 'axxxx aaa a aaa aa'); 47 48$a = $t; 49@res = (); 50pos ($a) = 1; 51$a =~ s/\Ga(?{push @res, $_, $`})/x/g; 52is("$a @res", 'axx aaa a aaa aa'); 53 54$a = $t; 55@res = (); 56pos ($a) = 1; 57$a =~ s/\Ga(?{push @res, $_, $`})/xx/; 58is("$a @res", 'axxa aaa a'); 59 60$a = $t; 61@res = (); 62pos ($a) = 1; 63$a =~ s/\Ga(?{push @res, $_, $`})/x/; 64is("$a @res", 'axa aaa a'); 65 66sub x2 {'xx'} 67sub x1 {'x'} 68 69$a = $t; 70@res = (); 71pos ($a) = 1; 72$a =~ s/\Ga(?{push @res, $_, $`})/x2/ge; 73is("$a @res", 'axxxx aaa a aaa aa'); 74 75$a = $t; 76@res = (); 77pos ($a) = 1; 78$a =~ s/\Ga(?{push @res, $_, $`})/x1/ge; 79is("$a @res", 'axx aaa a aaa aa'); 80 81$a = $t; 82@res = (); 83pos ($a) = 1; 84$a =~ s/\Ga(?{push @res, $_, $`})/x2/e; 85is("$a @res", 'axxa aaa a'); 86 87$a = $t; 88@res = (); 89pos ($a) = 1; 90$a =~ s/\Ga(?{push @res, $_, $`})/x1/e; 91is("$a @res", 'axa aaa a'); 92 93done_testing(); 94