PHPで特定のimgタグを置き換える機能を作っています。 しかし...これまではうまくいきません。PHP:preg_replaceで間違ったHTML置換。
コードは、私が "imgタグ" +への最初の3 "imgタグを" 変更したい
define('IMG_REG', '/<img.*?>/i');
$str = '<p>aaa</p><img src="aaa" >
<p>iii</p><img src="aaa" >
<p>uuu</p><img src="aaa" >
<p>eee</p><img src="aaa" >
<p>ooo</p><img src="aaa" >' ;
$num = 3;
if (preg_match_all(IMG_REG, $str, $m, PREG_OFFSET_CAPTURE) > $num-1) {
$target = $m[0][$num-1][0];
$new = $target.'!!!';
if($target != NULL):
$str = preg_replace($target, $new, $str, $num);
endif;
}
echo $str;
の下にある "!!!"。
そう...理想的な結果は、この
<p>aaa</p><img src="aaa" >!!!
<p>iii</p><img src="aaa" >!!!
<p>uuu</p><img src="aaa" >!!!
<p>eee</p><img src="aaa" >
<p>ooo</p><img src="aaa" >
のようなものです。しかし、いくつかの '< <' &があり
<p>aaa</p><<img src="aaa" >!!!>
<p>iii</p><<img src="aaa" >!!!>
<p>uuu</p><<img src="aaa" >!!!>
<p>eee</p><img src="aaa" >
<p>ooo</p><img src="aaa" >
のような...実際の結果が '!!!>'。 私は理由を伝えることができません...
私のマスターになってください!ありがとう。
あなたはこれを試すことができます: '定義します。これはhttps://regex101.com/ – Jer
( 'IMG_REG'、 '/ IMGを*/I。?')私にとって非常に素晴らしい情報:)おかげでみんな! – SnakeFoot
を助ける' – ya90net