Jump to content

Archived

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

Pezzoni

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}
    {$wai[one]}
    {$wai[two]}
{endloop}[/code]

All of which is a little annoying!

Any help would be gratefully recieved!

Thanks.

Share this post


Link to post
Share on other sites
Fixed this one with:
[code]
        $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.