Annotation of embedaddon/php/ext/pcre/tests/preg_match_all_basic.phpt, revision 1.1.1.1

1.1       misho       1: --TEST--
                      2: Test preg_match_all() function : basic functionality 
                      3: --FILE--
                      4: <?php
                      5: /*
                      6: * proto int preg_match_all(string pattern, string subject, array subpatterns [, int flags [, int offset]])
                      7: * Function is implemented in ext/pcre/php_pcre.c
                      8: */
                      9: $string = 'Hello, world! This is a test. This is another test. \[4]. 34534 string.';
                     10: 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)
                     11: var_dump($match1);
                     12: 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)
                     13: var_dump($match2);
                     14: var_dump(preg_match_all('@\. \\\(.*).@', $string, $match3, PREG_PATTERN_ORDER)); //finds ".\ [...]" and everything else to the end of the string. (greedy) (1 match)
                     15: var_dump($match3);
                     16: var_dump(preg_match_all('/\d{2}$/', $string, $match4)); //tries to find 2 digits at the end of a string (0 matches)
                     17: var_dump($match4);
                     18: var_dump(preg_match_all('/(This is a ){2}(.*)\stest/', $string, $match5)); //tries to find "This is aThis is a [...] test" (0 matches)
                     19: var_dump($match5);
                     20: ?>
                     21: --EXPECTF--
                     22: int(1)
                     23: array(1) {
                     24:   [0]=>
                     25:   array(1) {
                     26:     [0]=>
                     27:     array(2) {
                     28:       [0]=>
                     29:       string(1) "3"
                     30:       [1]=>
                     31:       int(61)
                     32:     }
                     33:   }
                     34: }
                     35: int(2)
                     36: array(2) {
                     37:   [0]=>
                     38:   array(2) {
                     39:     [0]=>
                     40:     string(15) "This is a test."
                     41:     [1]=>
                     42:     string(5) " test"
                     43:   }
                     44:   [1]=>
                     45:   array(2) {
                     46:     [0]=>
                     47:     string(21) "This is another test."
                     48:     [1]=>
                     49:     string(11) "nother test"
                     50:   }
                     51: }
                     52: int(1)
                     53: array(2) {
                     54:   [0]=>
                     55:   array(1) {
                     56:     [0]=>
                     57:     string(21) ". \[4]. 34534 string."
                     58:   }
                     59:   [1]=>
                     60:   array(1) {
                     61:     [0]=>
                     62:     string(17) "[4]. 34534 string"
                     63:   }
                     64: }
                     65: int(0)
                     66: array(1) {
                     67:   [0]=>
                     68:   array(0) {
                     69:   }
                     70: }
                     71: int(0)
                     72: array(3) {
                     73:   [0]=>
                     74:   array(0) {
                     75:   }
                     76:   [1]=>
                     77:   array(0) {
                     78:   }
                     79:   [2]=>
                     80:   array(0) {
                     81:   }
                     82: }

FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>