Re: Optimal Regex?

From: Date: Mon, 26 Sep 2005 19:32:51 +0000
Subject: Re: Optimal Regex?
References: 1  Groups: php.general 
Request: Send a blank email to php-general+get-223230@lists.php.net to get a copy of this message
David Pollack wrote:
I need to catch all instances of a coordinate in a give string. So far I have this, which only works if the coordinate is in a certain format. $string = (334,-53.44),(111,222); $expression = '([(][-]?[0-9]*[.0-9]*?,[-]?[0-9]*[.0-9]*?[)])';
here's a horrid little bit of .... for you :) <?php $testStr = <<< EOD
\$string = (334,-53.44),(111,222); preg_match_all(\$expression, "\$string", \$matches); This returns the correct strings (334,-53.44) and (111,222), but Id like all formats to work. Like (111, 222), ( 111 , 222 ), (111, 222 ), etc, etc. How would I change my regex to accomplish this? EOD;
$coordRE = "(?:[ ]?[-+]?\\d+(?:\\.\\d+)?[ ]?)"; $coordsRE = "#(\\({$coordRE},{$coordRE}\\))#"; $matches = array(); preg_match_all($coordsRE, $testStr, $matches); var_dump($testStr, $matches); ?>
preg_match_all($expression, "$string", $matches); ^-- why ? ...
are you wrapping the variable in double quotes?
This returns the correct strings (334,-53.44) and (111,222), but I'd like all formats to work. Like (111, 222), ( 111 , 222 ), (111, 222 ), etc, etc. How would I change my regex to accomplish this? -- David Pollack DHPollack@gmail.com www.atlspecials.com <http://www.atlspecials.com> www.da3.net <http://www.da3.net>


« previous php.general (#223230) next »