※ ChatGPTを利用し、要約された質問です(原文:ワイルドカード部分を置換時に使用するには)
ワイルドカード部分を置換時に使用するには
このQ&Aのポイント
ワイルドカード部分を置換する方法を教えてください。
ワイルドカード部分の置換がうまくいきません。解決策を教えてください。
オーソドックスな方法でワイルドカード部分を置換しようとしていますが、うまくいきません。どうすれば正しく置換できるでしょうか?
単刀直入にお聞きします^^
html内の
<span class="timestamp">ワイルドカード1</span> <a href="/ワイルドカード2/
の部分を、
<span class="timestamp">ワイルドカード1</span> <a href="http://d.hatena.ne.jp/ワイルドカード2/" target="_blank"><img src="http://www.hatena.ne.jp/images/top/side_d.gif" alt="ワイルドカード2's diary"></a> <a href="http://b.hatena.ne.jp/entrylist?url=http%3A%2F%2Fd.hatena.ne.jp%2Fワイルドカード2%2F&sort=hot" target="_blank"><img src="http://gensyokuneon.net/hatena/chumoku.png" alt="ワイルドカード2's hotentry"></a> <a href="http://b.hatena.ne.jp/entrylist?url=http%3A%2F%2Fd.hatena.ne.jp%2Fワイルドカード2%2F&sort=count" target="_blank"><img src="http://gensyokuneon.net/hatena/ninki.png" alt="ワイルドカード2's popularentry"></a> <a href="/ワイルドカード2/"
というように置換したいのです。
試しに、
document.body.innerHTML=document.body.innerHTML.replace(/<span class="timestamp">.*?<\/span> <a href="\/.*?\/"/gi,'<span class="timestamp">+RegExp.$1+<\/span> <a href="http:\/\/d.hatena.ne.jp\/+RegExp.$2+\/" target="_blank"><img src="http:\/\/www.hatena.ne.jp\/images\/top\/side_d.gif" alt="+RegExp.$2+\'s diary"><\/a> <a href="http:\/\/b.hatena.ne.jp\/entrylist\\?url=http%3A%2F%2Fd.hatena.ne.jp%2F+RegExp.$2+%2F&sort=hot" target="_blank"><img src="http:\/\/gensyokuneon.net\/hatena\/chumoku.png" alt="+RegExp.$2+\'s hotentry"><\/a> <a href="http:\/\/b.hatena.ne.jp\/entrylist\\?url=http%3A%2F%2Fd.hatena.ne.jp%2F+RegExp.$2+%2F&sort=count" target="_blank"><img src="http:\/\/gensyokuneon.net\/hatena\/ninki.png" alt="+RegExp.$2+\'s popularentry"><\/a> <a href="\/+RegExp.$2+\/"');focus();
とオーソドックスっぽい方法でやってみましたが、2カ所のワイルドカード部分がそのまま「RegExp.$1」「RegExp.$2」と表示されてしまうのです。
どうすればワイルドカード部をそのままもってこれるのでしょうか?proxomitronで簡単に出来たことがjavascriptで出来ず悔しい思いです。
お礼
参考ページのやりかたで出来ました。 document.body.innerHTML=document.body.innerHTML.replace(/<span class="timestamp">(.*?)<\/span> <a href="\/(.*?)\/"/gi,"<span class=\"timestamp\">$1<\/span> <a href=\"http:\/\/d\.hatena\.ne\.jp\/$2\/\" target=\"_blank\"><img src=\"http:\/\/www\.hatena\.ne\.jp\/images\/top\/side_d\.gif\" alt=\"$2\'s diary\"><\/a> <a href=\"http:\/\/b\.hatena\.ne\.jp\/entrylist\?url=http%3A%2F%2Fd\.hatena\.ne\.jp%2F$2%2F&sort=hot\" target=\"_blank\"><img src=\"http:\/\/gensyokuneon\.net\/hatena\/chumoku\.png\" alt=\"$2\'s hotentry\"><\/a> <a href=\"http:\/\/b\.hatena\.ne\.jp\/entrylist\?url=http%3A%2F%2Fd\.hatena\.ne\.jp%2F$2%2F&sort=count\" target=\"_blank\"><img src=\"http:\/\/gensyokuneon\.net\/hatena\/ninki\.png\" alt=\"$2\'s popularentry\"><\/a> <a href=\"\/$2\/\""); こんな感じです。 steel_grayさんの方法でも出来ました。 ありがとうございました!!