わかりましたので、一部の html ファイルの特定のパターンに一致させるために使用しようとしている正規表現があります。preg_match ステートメントは次のとおりです。
preg_match('@<'.$htmlElementType.' id\s*=\s*"{{ALViewElement_'.$this->_elementId.'}}".*>[\s\S]*</'.$htmlElementType.'(>)@i', $htmlString, $newMatches, PREG_OFFSET_CAPTURE)
明確にするために、これは id が {{ALViewElement_.*}} の html 要素と一致させようとしていますが、終了タグで終了する必要もあります。たとえば、$htmlElementType が「section」の場合、「/」で終了します。セクション>」。
私のhtmlがこのように見え、他に何も入っていない場合、期待どおりに動作します:
<section id="{{ALViewElement_resume}}">
<!--{{RESUME_ADD_CHANGE_PIECE}}-->
<!--{{RESUME}}-->
</section>
問題は、html の後半に section 要素があり、それを閉じる /section> がある場合です。例:
<section id="{{ALViewElement_resume}}">
<!--{{RESUME_ADD_CHANGE_PIECE}}-->
<!--{{RESUME}}-->
</section>
<div>
</div>
<section>
HEY THIS IS ME
</section>
この場合、フルマッハは上記のすべてです。しかし、最初のものを開く で止めたいです。コードの後半で、その終了タグの最後の > の位置が必要になるため、これは重要です。
この正規表現を少し変更する方法はありますか?
助けてくれてありがとう!