RE: [PHP] Re: regex

From: Date: Wed, 13 Aug 2008 21:06:31 +0000
Subject: RE: [PHP] Re: regex
References: 1 2 3  Groups: php.general 
Request: Send a blank email to php-general+get-278058@lists.php.net to get a copy of this message
> -----Original Message----- > From: Shawn McKenzie [mailto:nospam@mckenzies.net] > Sent: Wednesday, August 13, 2008 3:31 PM > To: php-general@lists.php.net > Subject: [PHP] Re: regex > > Philip Thompson wrote: > > Figured it out. Just needed to stretch my brain a lil. > > > > On Aug 13, 2008, at 3:07 PM, Philip Thompson wrote: > > > >> <?php > >> function blegh ($subject) { > >> // I know this pattern doesn't exactly work > >> $pattern = '/(.*).php\?action=([^&].*)/'; > > > > $pattern = '/(.*).php\?action=([^&]+)+/'; > > > > > >> preg_match ($pattern, $subject, $matches); > >> return $matches; > >> } > >> > >> blegh ('somePage.php?action=doSomething&id='); > >> ?> > >> > >> Ok, the important parts that I need to obtain from this are: > >> > >> somePage > >> doSomething > >> > >> How can you modify the pattern above to grab the action > appropriately? > >> Sorry, my regex is a lil rusty! > >> > >> Thanks in advance, > >> ~Phil > > > > Cheers, > > ~Philip > > That regex might not always work for you, (&amp;) comes to mind. You > might want to look at parse_str() which you can use after parse_url() > if > needed. I think /(.*)\.php\?action=([^&]+(?(&)[^&+]+))/ might be a step in the right direction for RegExing the additional URL query string parameters. I haven't tested it... but either way, I thought it was worth mentioning that the ".php" part should be "\.php" (or "[.]php"), otherwise it will match "any character followed by php." Todd Boyd Web Programmer

« previous php.general (#278058) next »