0

これはかなり単純に思えるかもしれませんが、このタスクを実行する方法に困惑しています。

配列のキー/値からすべてのHTMLIMGタグを削除してから、削除したHTML IMGタグを取得して、今回は独自の個別の配列キーを使用して同じ配列にプッシュする必要があります。

サンプル:

$array = array(
    'content' => '<img src="http://www.domain.com/images/img.png" width="100" height="100" alt="" />here is some content that might also be in this string.'
);

$array = array(
    'content' => 'here is some content that might also be in this string.',
    'image' => '<img src="http://www.domain.com/images/img.png" width="100" height="100" alt="" />'
);

HTMLIMGタグと文字列内の残りのテキストは常に異なります。内容がまったく同じになることは決してないので、どうすればいいのかよくわかりません。explode()私はまたはについて考えていstr_replace()ました。

4

1 に答える 1

1

正規表現が必要です。何かのようなもの:

$pattern = '#<img(.*)/>#U'; // note need to use ungreedy match here.';
$number_of_matches = preg_match_all($pattern, $subject, $matches, PREG_OFFSET_CAPTURE);

これにより、一致の数と、一致に関する情報 (一致した文字列と、元の文字列からコンテンツを削除するために使用する一致文字列のオフセットを含む) がわかります。

于 2012-07-24T15:46:22.207 に答える