Jump to content


This topic is now archived and is closed to further replies.


Preg Split not matching with linebreaks

Recommended Posts

I have the following preg_split command at the moment:
[code]preg_split('/(\{loop \$.+ as \$.+\}.+?\{endloop\})/', $this->template_file, -1, PREG_SPLIT_NO_EMPTY | PREG_SPLIT_DELIM_CAPTURE);[/code]

Now this works great, so long as the text to be matched is all on the same line. For example:
[code]{loop $waa as $wai}{$wai[one]}{$wai[two]}{endloop}[/code]
All works fine.

However, unfortunately, if the contained statements are split onto different lines, the preg_split statement stops working properly, so this will not work for example:
[code]{loop $waa as $wai}

All of which is a little annoying!

Any help would be gratefully recieved!


Share this post

Link to post
Share on other sites
Fixed this one with:
        $pieces = preg_split('/(\{loop \$.+ as \$.+\}(?s:.+?)\{endloop\})/', $this->template_file, -1, PREG_SPLIT_NO_EMPTY | PREG_SPLIT_DELIM_CAPTURE);[/code]

Share this post

Link to post
Share on other sites


Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.