次のシナリオの正規表現を書くのに苦労しています:
文字列$description
にはテキストと、その中に埋め込まれたビデオが含まれています。
preg_replace()
要素内のすべてを置き換えるために既存の呼び出しを変更する必要が<div class="brightcove-player">
ありますが、何らかの方法でその内部videoPlayer
から ID 値を取得する必要があります。
人々が DOMdoc を推奨することは知っていますが、実際regex
にはコード内の既存のものを変更する必要があるだけです。
以下の例を参照してください。
$description = '
<p>Intro text.</p>
<div class="brightcove-player" style="margin-bottom:8px;margin-top:8px;">
<object id="time_brightcove_g161jf8dj271jd72jd82kf" class="BrightcoveExperience">
<param name="bgcolor" value="#000000" />
<param name="width" value="405" />
<param name="height" value="228" />
<param name="@videoPlayer" value="1234567890"/>
<param name="isVid" value="true" />
<param name="wmode" value="transparent"/>
<param name="videoSmoothing" value="true"/>
</object>
</div>
<p>End text.</p>
';
$output = '<p>Intro text.</p><div class="brightcove-player" style="margin-bottom:8px;margin-top:8px;"><a href="brightcove://1234567890">Watch this video<a></div><p>End text.</p>';