まず、はい、HTML の解析に正規表現を使用してはならないことはわかっていますが、この状況では、長いテキスト文字列 (実際には var_dump() の出力) を取得し、いくつかの正規表現を使用して XHTML に変換しているので、私が扱うタグを正確に知っています。シーケンスの最後の 2 つの正規表現は、中かっこを探し、XHTML の断片に変換します。<var></var>
前の正規表現でタグの間に出力している中括弧が文字列変数に含まれている場合を除いて、うまく機能します。
だから、現在、私は使用しています: /\s*{\s*/u
. <var></var>
私がする必要があるのは、タグ内の任意の中括弧を無視するようにこれを調整することです。
私は使用してみました:/\s*{\s*(?!(?<!<var>)[^\{]*<\/var>)/u
しかし、それは正しくありません。正しく動作しない条件が何であるかをまだ特定していません。したがって、私はこの正規表現に近いかもしれませんし、そうでないかもしれません。したがって、SOの専門知識が必要です。ありがとうございました。
また、これが単に不可能な場合は、私ができる他のハックがあります。つまり、文字列を base64_encode() して<var></var>
タグに貼り付け、最後の正規表現として base64_decode()<var></var>
タグで囲まれたものです。私は使用可能な正規表現を見つけたいと思っています。さらに重要なのは、それが可能かどうかということです。