replaceメソッドをhackしてsafariでもreplace callbackを使えるようにしてみた。Safari バージョン 2.0.2(416.13)で上手く動いたそうです。手元に環境が無いので細かい検証はできませんが、とりあえず。 http://la.ma.la/misc/js/replace_callback/ 解説JavaScriptのString#replaceメソッドは文字列を置換して新しい文字列を返すメソッドですが、第二引数に置換後の文字列を指定する代わりにfunctionオブジェクトを渡してやると、Perlでいうところのeオプションみたいなことができます。 // 大文字を小文字に、小文字を大文字に String.prototype.swapcase = function(){ return this.replace(/([a-z])|([A-Z])/g,functi