home *** CD-ROM | disk | FTP | other *** search
/ OS/2 Shareware BBS: 10 Tools / 10-Tools.zip / perl560.zip / t / op / subst_amp.t < prev    next >
Text File  |  1999-07-20  |  2KB  |  105 lines

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