bug70232.phpt 991 B

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162
  1. --TEST--
  2. Bug #70232 (Incorrect bump-along behavior with \K and empty string match)
  3. --FILE--
  4. <?php
  5. $pattern = '~(?: |\G)\d\B\K~';
  6. $subject = "123 a123 1234567 b123 123";
  7. preg_match_all($pattern, $subject, $matches);
  8. var_dump($matches);
  9. var_dump(preg_replace($pattern, "*", $subject));
  10. var_dump(preg_split($pattern, $subject));
  11. ?>
  12. --EXPECT--
  13. array(1) {
  14. [0]=>
  15. array(10) {
  16. [0]=>
  17. string(0) ""
  18. [1]=>
  19. string(0) ""
  20. [2]=>
  21. string(0) ""
  22. [3]=>
  23. string(0) ""
  24. [4]=>
  25. string(0) ""
  26. [5]=>
  27. string(0) ""
  28. [6]=>
  29. string(0) ""
  30. [7]=>
  31. string(0) ""
  32. [8]=>
  33. string(0) ""
  34. [9]=>
  35. string(0) ""
  36. }
  37. }
  38. string(35) "1*2*3 a123 1*2*3*4*5*6*7 b123 1*2*3"
  39. array(11) {
  40. [0]=>
  41. string(1) "1"
  42. [1]=>
  43. string(1) "2"
  44. [2]=>
  45. string(8) "3 a123 1"
  46. [3]=>
  47. string(1) "2"
  48. [4]=>
  49. string(1) "3"
  50. [5]=>
  51. string(1) "4"
  52. [6]=>
  53. string(1) "5"
  54. [7]=>
  55. string(1) "6"
  56. [8]=>
  57. string(8) "7 b123 1"
  58. [9]=>
  59. string(1) "2"
  60. [10]=>
  61. string(1) "3"
  62. }