tomasd Posted September 9, 2008 Share Posted September 9, 2008 Hi, I have 2 regex patterns I want to check against $data. What is the correct way of doing this? I'm trying this; <?php // regex_price.php function regex_price($data) { $preg_pattern_price = '/FareAdult([\d.]+)/'; preg_match_all($preg_pattern_price, $data, $result_price, PREG_PATTERN_ORDER); //Check if price is found under OFFERAdult if(empty($result_price)){ $preg_pattern_price = '/OFFERAdult([\d.]+)/'; preg_match_all($preg_pattern_price, $data, $result_price, PREG_PATTERN_ORDER); } $result_price = $result_price[1]; return ($result_price); } ?> but no joy. Any help appreciated! Quote Link to comment Share on other sites More sharing options...
effigy Posted September 9, 2008 Share Posted September 9, 2008 Do you only want the first price? If so, you should use preg_match. <pre> <?php $data = <<<DATA FareAdult1.00 OFFERAdult1.00 OfferAdult2.00 FareAdult15.00 DATA; function regex_price($data) { preg_match_all('/(?:Fare|OFFER)Adult([\d.]+)/', $data, $result_price, PREG_PATTERN_ORDER); return $result_price; } print_r(regex_price($data)); ?> </pre> Quote Link to comment Share on other sites More sharing options...
tomasd Posted September 9, 2008 Author Share Posted September 9, 2008 thanks very much, it appears I could have just used right regex! Thanks very much! Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.