実装したいこと
以下のようなHTMLがあります。
HTML
1<ul class="foo"> 2 <li class="hoge"> 3 <a href="/fruits/melon/" class="link">メロン</a> 4 </li> 5 <li class="hoge"> 6 <a href="/fruits/apple/" class="link">リンゴ</a> 7 </li> 8 <li class="hoge"> 9 <a href="/fruits/banana/" class="link">バナナ</a> 10 </li> 11 <li class="hoge"> 12 <a href="/fruits/grape/" class="link">ぶどう</a> 13 </li> 14 <li class="hoge"> 15 <a href="/fruits/orange/" class="link">オレンジ/a> 16 </li> 17</ul>
上記のHTMLをもつページにアクセスした際、
URLがhrefと等しければ、aタグのhref属性に置き換えるという処理を実装したいです。
ただしDOMなどを用いずに実装したいです
例:
「http://ドメイン/fruits/melon」にアクセスしたとき、
aタグのhrefに「/fruits/melon」を持つliタグを丸ごと以下のように書き換える
HTML
1 <a class="link">メロン</a>
発生している問題
pref_replaceを用いて置き換えを試みましたが上手くいきません。
該当のソースコード
PHP
1$html = //該当ページのHTML 割愛; 2$url = //該当ページのURL 割愛; 3 4$search_word = '{<a href="'. $url .'" class="link">(.*)</a>}'; //探索文字列 5 6$html = preg_replace($search,'',$html); //置換処理実行 7 8echo $html; //置換結果出力 --> 置換前と変わらず
正規表現はまだ使い慣れていないため、調査不足の点もあるかもしれません。
よろしくお願いします。