Re: Unexplained Issue Using Regex

From: Date: Fri, 06 Mar 2009 21:53:31 +0000
Subject: Re: Unexplained Issue Using Regex
References: 1 2 3  Groups: php.general 
Request: Send a blank email to php-general+get-289497@lists.php.net to get a copy of this message
On Fri, Mar 6, 2009 at 3:44 PM, Nitsan Bin-Nun <nitsan@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

« previous php.general (#289497) next »