-3

正規表現について教えてください。提供された正規表現を実行したいサンプルhtmlを次に示します。

<div id="divId">
    {% block var_name1 %}
      <p> Hello world </p>
    {% endblock %}
    <div class="someclass">
       {% block var_name2 %}
         <span>Hello span</span>
       {% endblock %}
    </div> 
</div>

そして、 preg_match_allが php で行うように、一致するすべてのブロックを見つけます:

array(2) {
  [0]=>
   array(2) {
    [0]=>  "var_name1"
    [1]=>  "var_name2"
   }
  [1]=>
   array(2) {
    [0]=>  "<p> Hello world </p>"
    [1]=>  "<span>Hello span</span>"
   }
}

前もって感謝します。

4

2 に答える 2

0

これは、探している正規表現です。

preg_match_all('/\{% block ([a-z0-9_]+) %\}(.*?)\{% endblock %\}/is', $text)
于 2013-11-06T14:34:27.440 に答える