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
[EMAIL PROTECTED]
www.atlspecials.com <http://www.atlspecials.com>
www.da3.net <http://www.da3.net>
--
PHP General Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php