PageRenderTime 38ms CodeModel.GetById 13ms RepoModel.GetById 0ms app.codeStats 0ms

/hphp/test/zend/bad/ext/pcre/tests/preg_match_all_basic.php

http://github.com/facebook/hiphop-php
PHP | 23 lines | 17 code | 1 blank | 5 comment | 0 complexity | df2f7eaccf3ce1e5af5cd25a51cb2b7a MD5 | raw file
Possible License(s): LGPL-2.1, BSD-2-Clause, BSD-3-Clause, MPL-2.0-no-copyleft-exception, MIT, LGPL-2.0, Apache-2.0
  1. <?php
  2. /*
  3. * proto int preg_match_all(string pattern, string subject, [array subpatterns [, int flags [, int offset]]])
  4. * Function is implemented in ext/pcre/php_pcre.c
  5. */
  6. $string = 'Hello, world! This is a test. This is another test. \[4]. 34534 string.';
  7. var_dump(preg_match_all('/[0-35-9]/', $string, $match1, PREG_OFFSET_CAPTURE|PREG_PATTERN_ORDER, -10)); //finds any digit that's not 4 10 digits from the end(1 match)
  8. var_dump($match1);
  9. var_dump(preg_match_all('/[tT]his is a(.*?)\./', $string, $match2, PREG_SET_ORDER)); //finds "This is a test." and "This is another test." (non-greedy) (2 matches)
  10. var_dump($match2);
  11. var_dump(preg_match_all('@\. \\\(.*).@', $string, $match3, PREG_PATTERN_ORDER)); //finds ".\ [...]" and everything else to the end of the string. (greedy) (1 match)
  12. var_dump($match3);
  13. var_dump(preg_match_all('/\d{2}$/', $string, $match4)); //tries to find 2 digits at the end of a string (0 matches)
  14. var_dump($match4);
  15. var_dump(preg_match_all('/(This is a ){2}(.*)\stest/', $string, $match5)); //tries to find "This is aThis is a [...] test" (0 matches)
  16. var_dump($match5);
  17. // Test not passing in a subpatterns array.
  18. var_dump(preg_match_all('/test/', $string));
  19. var_dump(preg_match_all('/this isn\'t in the string/', $string));
  20. var_dump(preg_match_all('/world/', $string));
  21. var_dump(preg_match_all('/[0-9]/', $string));
  22. ?>