ページ内のリンクを一気に置換するブックマークレット

サイト移行のテスト中とか、その他まあいろいろな事情などで、現在表示されているページに記述されているリンクをあるパターンでもって一気に置換したい(サーバにあるコンテンツは触らず、今自分の画面内だけで)っていうときには、ブックマークレット使うと良いです。でもどうやって書けば良いんだっけ?というのをやってみたのでメモ。

http://sv1.example.com/note/20150901/ みたいな URL を http://sv2.example.com/blog/ent?id=20150901 みたいな URL にゴソッと置換したいんです、みたいなときに使います。

 

javascript:(function(a){var regex=new RegExp("http://sv1.example.com/note/([0-9]+).*");for(var i=0;i<a.length;i++){a[i].href=a[i].href.replace(regex,'http://sv2.example.com/blog/ent?id=$1','g');}})(document.getElementsByTagName('A'));

 

ページ内のアンカータグのついてるオブジェクト全部拾い上げて一つずつについてパターンとして用意した正規表現にマッチさせて対応してたら置換するっていう処理です。