« 履歴のすべてをインターネットショートカットに変換する。(その3) | トップページ | ファイル名にシフトJIS以外の文字があるか、VBSファイルで検出する。 »

2011年10月 1日 (土)

「このページの検索」を代替、拡張するブックマークレット

「このページの検索」では、ひとつの文字列しか検索できません。また、正規表現も使えません。

そこで、以下のブックマークレットを作成します。

javascript:var s=prompt('検索文字列','');if(s){var k=0,r=document.body.createTextRange();while(r.findText(s)){k++;r.execCommand('BackColor',false,'yellow');r.collapse(false);}alert(k);}

これは、文字列を検索して、その背景色を黄色に変えます。

javascript:if(!window.find){find='';}find=prompt('検索文字列',find);if(find){var k=0,r=document.body.createTextRange();while(r.findText(find)){k++;r.execCommand('BackColor',false,'yellow');r.collapse(false);}alert(k);}

これは、同じページ内で前回検索文字列を記憶します。

次のは、正規表現で検索します。

javascript:var s=prompt('正規表現','');if(s){s=eval(s);var k=0,r=document.body.createTextRange();r.moveEnd('textedit');while(r.text.match(s)){k++;r.collapse();r.findText(RegExp.lastMatch);r.execCommand('BackColor',false,'yellow');r.collapse(false);r.moveEnd('textedit');}alert(k);}

« 履歴のすべてをインターネットショートカットに変換する。(その3) | トップページ | ファイル名にシフトJIS以外の文字があるか、VBSファイルで検出する。 »