Server IP : 23.254.227.96 / Your IP : 216.73.216.7 Web Server : Apache/2.4.62 (Unix) OpenSSL/1.1.1k System : Linux hwsrv-1277026.hostwindsdns.com 4.18.0-477.13.1.el8_8.x86_64 #1 SMP Tue May 30 14:53:41 EDT 2023 x86_64 User : viralblo ( 1001) PHP Version : 8.1.31 Disable Function : NONE MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : OFF | Sudo : ON | Pkexec : ON Directory : /proc/self/root/proc/thread-self/root/usr/local/src/pcre2-10.39/testdata/ |
Upload File : |
# This set of tests exercises the serialization/deserialization and code copy # functions in the library. It does not use UTF or JIT. #forbid_utf # Compile several patterns, push them onto the stack, and then write them # all to a file. #pattern push /(?<NAME>(?&NAME_PAT))\s+(?<ADDR>(?&ADDRESS_PAT)) (?(DEFINE) (?<NAME_PAT>[a-z]+) (?<ADDRESS_PAT>\d+) )/x /^(?:((.)(?1)\2|)|((.)(?3)\4|.))$/i #save testsaved1 # Do it again for some more patterns. /(*MARK:A)(*SKIP:B)(C|X)/mark ** Ignored when compiled pattern is stacked with 'push': mark /(?:(?<n>foo)|(?<n>bar))\k<n>/dupnames #save testsaved2 #pattern -push # Reload the patterns, then pop them one by one and check them. #load testsaved1 #load testsaved2 #pop info Capture group count = 2 Max back reference = 2 Named capture groups: n 1 n 2 Options: dupnames Starting code units: b f Subject length lower bound = 6 foofoo 0: foofoo 1: foo barbar 0: barbar 1: <unset> 2: bar #pop mark C 0: C 1: C MK: A \= Expect no match D No match, mark = A #pop AmanaplanacanalPanama 0: AmanaplanacanalPanama 1: <unset> 2: <unset> 3: AmanaplanacanalPanama 4: A #pop info Capture group count = 4 Named capture groups: ADDR 2 ADDRESS_PAT 4 NAME 1 NAME_PAT 3 Options: extended Subject length lower bound = 3 metcalfe 33 0: metcalfe 33 1: metcalfe 2: 33 # Check for an error when different tables are used. /abc/push,tables=1 /xyz/push,tables=2 #save testsaved1 Serialization failed: error -30: patterns do not all use the same character tables #pop xyz 0: xyz #pop abc 0: abc #pop should give an error ** Can't pop off an empty stack pqr /abcd/pushcopy abcd 0: abcd #pop abcd 0: abcd #pop should give an error ** Can't pop off an empty stack /abcd/push #popcopy abcd 0: abcd #pop abcd 0: abcd /abcd/push #save testsaved1 #pop should give an error ** Can't pop off an empty stack #load testsaved1 #popcopy abcd 0: abcd #pop abcd 0: abcd #pop should give an error ** Can't pop off an empty stack /abcd/pushtablescopy abcd 0: abcd #popcopy abcd 0: abcd #pop abcd 0: abcd # Must only specify one of these //push,pushcopy ** Not allowed together: push pushcopy //push,pushtablescopy ** Not allowed together: push pushtablescopy //pushcopy,pushtablescopy ** Not allowed together: pushcopy pushtablescopy # End of testinput20