[PHP] Re: regexp: 'a correctly parenthesized substring advanced'
I give an wrong example. Here is a better one ?php $txt = func1($par1, 100 (euro), func2($par2,(c) by nobody)); if (preg_match_all(' / ([a-zA-Z]\w*?) \s* ( \( ( (?.*?)| .*?(?R)* ) \) )+ /x ', $txt, $m)){ print_r($m); } else { echo no match; } echo \n; ? This must result in : First call: func1($par1, 100 (euro), func2($par2,(c) by nobody)) Second call with the inner part $par1, 100 (euro), func2($par2,(c) by nobody) must result in : func2($par2,(c) by nobody) Please visit www.regexp.org there is an open thread of this question. thanx -- PHP General Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php
Re: [PHP] Re: regexp: 'a correctly parenthesized substring advanced'
Forget regexp and try this function: http://sk.php.net/manual/en/function.token-get-all.php Jaaboo wrote: I give an wrong example. Here is a better one ?php $txt = func1($par1, 100 (euro), func2($par2,(c) by nobody)); if (preg_match_all(' / ([a-zA-Z]\w*?) \s* ( \( ( (?.*?)| .*?(?R)* ) \) )+ /x ', $txt, $m)){ print_r($m); } else { echo no match; } echo \n; ? This must result in : First call: func1($par1, 100 (euro), func2($par2,(c) by nobody)) Second call with the inner part $par1, 100 (euro), func2($par2,(c) by nobody) must result in : func2($par2,(c) by nobody) Please visit www.regexp.org there is an open thread of this question. thanx -- PHP General Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php
Re: [PHP] Re: regexp: 'a correctly parenthesized substring advanced'
hi marek, thanx for your suggestion. i have tried out the tokenizer but 1. i think its not realy final and can change in the future 2. the tokenizer can only find real php code but i need to find my simplified php code without an ; on the end of an statement for example. so the tokenizer doesn't do my job. i'm not far from the right solution it's a litle step to bring the regex working with embeded parenthesis beetween i only had 2pregs in the complete source that can catch any type of registered function call with the simplified syntax ... this is fast enough for me ... Marek Kilimajer [EMAIL PROTECTED] schrieb im Newsbeitrag news:[EMAIL PROTECTED] Forget regexp and try this function: http://sk.php.net/manual/en/function.token-get-all.php Jaaboo wrote: I give an wrong example. Here is a better one ?php $txt = func1($par1, 100 (euro), func2($par2,(c) by nobody)); if (preg_match_all(' / ([a-zA-Z]\w*?) \s* ( \( ( (?.*?)| .*?(?R)* ) \) )+ /x ', $txt, $m)){ print_r($m); } else { echo no match; } echo \n; ? This must result in : First call: func1($par1, 100 (euro), func2($par2,(c) by nobody)) Second call with the inner part $par1, 100 (euro), func2($par2,(c) by nobody) must result in : func2($par2,(c) by nobody) Please visit www.regexp.org there is an open thread of this question. thanx -- PHP General Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php