[PHP] preg_match_all question
Hi All, Having an issue with regular expressions, never been my strong point! The following pattern only picks up one instance per line, if more than one instance exists all text from first {{ to last }} is included, can anyone point out where I am going wrong? preg_match_all(/\{\{lang:(.*)\}\}/, $str, $tags); Here is an example of what needs to be processed ullispan{{lang:PA1Feature1}}/span/lilispan{{lang:PA1Feature2}}/span/li/ul ullispan{{lang:PA2Feature1}}/span/lilispan{{lang:PA2Feature2}}/span/li/ul TIA Phil. -- PHP General Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php
Re: [PHP] preg_match_all question
Robert Cummings wrote: On Fri, 2009-01-16 at 09:42 +, Phil Ewington - iModel Ltd. wrote: Hi All, Having an issue with regular expressions, never been my strong point! The following pattern only picks up one instance per line, if more than one instance exists all text from first {{ to last }} is included, can anyone point out where I am going wrong? preg_match_all(/\{\{lang:(.*)\}\}/, $str, $tags); You need the ungreedy modifier: preg_match_all(/\{\{lang:(.*)\}\}/U, $str, $tags); Cheers, Rob. Rob you're a star, thanks mate. - Phil -- PHP General Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php