On Fri, Mar 6, 2009 at 3:44 PM, Nitsan Bin-Nun <nit...@binnun.co.il> wrote:
> I'm not looking for other ideas, the main thing here is that I have about
> 30-100 regex's in the database and the script fetches them and applies them
> to the string. I can't build again the engine and I'm not going to do that.
> I'm trying to solve my problem ;) If you have any ideas regarding my issue
> and not going in another way this would be very appreciated.

Nitsan,

I think it's because you're referencing the capture group with index
instead of index 2. Also, I don't understand why you have the pipe
("|") character in your regex string... is that part of your engine?

This code:

$orig = 'http://www.zshare.net/video/541070871c7a8d9c';
$matches = array();
preg_match('#http://(www\.)zshare\.net/video/([^/]+)#', $orig, $matches);
echo $matches[2];

Grabs the correct match:

541070871c7a8d9c

The regex pattern works with the pipe char, but it is unnecessary and
may lead to some strange behavior.

Hope this helps,


--
// Todd

-- 
PHP General Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php

Reply via email to