dongronge3732 2014-05-21 19:48
浏览 28
已采纳

匹配以特定模式开头并以特定模式结束的字符串

I have to fetch all string that starts with [[{ and ends with }]]. I tried to use:

'/^\[\[\{*$\}\}\]\]/'

but it does not work.

Basically I have to fetch some JSON string embedded inside HTML documents.

  • 写回答

2条回答 默认 最新

  • du9757 2014-05-21 20:02
    关注

    This is the perfect use for lookarounds and you can use them like so:

    $re = '/(?=\[\[\{).*?(?<=\}\]\])/m'; 
    preg_match_all($re, $str, $matches);
    

    Here, preg_match_all() searches $str for all matches to the regular expression given in $re and puts them in $matches.

    Regex101 Demo

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)
编辑
预览

报告相同问题?