文字列を抜き出して置換
《../img.jpg》
と言う文字列を
<a href="../img.jpg"><img src="../img.jpg"></a>
と言う具合に置き換えて書き出したいのですが、
$text="テスト文章《img.jpg》<br>テスト文章《test.gif》";
$test01=(strpos($text, "《")+2);
$test02=(strpos($text, "》")-$test01);
$test03=substr($text,$test01,$test02);
$test04="<a href=\"".$test03."\"><img src=\"".$test03."\"></a>";
$test_txt=str_replace($test03,$test04,$text);
これだと、
「テスト文章<a href="img.jpg"><img src="img.jpg"></a><br>テスト文章《test.gif》」
となってしまい、《../img.jpg》が複数個ある場合の処理がうまく出来ず困っています。
ループ処理すればいいのでしょうけど、どのような方法が適切なのか分かりません。
また、これ以外の方法「preg_match()」などで、いい方法がありましたら、ご教授よろしくお願いします。
お礼
($url) = ($data =~ /\bhref="(.*?)"/i); で目的が達成できました。 どういう動きをしているのか調べて勉強してみます。 ありがとうございました。