• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:javascript)

JavaScriptを使ってURLをコピーして別のURLに移動する方法

このQ&Aのポイント
  • この記事では、JavaScriptを使用してURLをコピーして別のURLに移動する方法について説明します。
  • 質問者は、特定のURLから「n1234567890」という部分をコピーして、別のURLに移動するためのJavaScriptを作成したいという問題を抱えています。
  • 質問者はOperaまたはFirefoxで動作するようなJavaScriptを求めており、回答として `clipboardData.setData('Text',location.href.replace(/^(.+):\/\/(www\.)?[^.]+([^\/]+)\/(?:.*\/)?(.+)$/,'$1://$2$4$3/$4.txt'));` というコードが提案されていますが、質問者は理解することができませんでした。

質問者が選んだベストアンサー

  • ベストアンサー
  • nda23
  • ベストアンサー率54% (777/1415)
回答No.1

正規表現の問題ですね。 最後のスラッシュより後の部分以外を除去 すると目的の文字列が得られそうですね。 つまり、「文字が連続しスラッシュで終わる」 部分を空文字で置き換えます。 「文字が連続しスラッシュで終わる」は「.+/」 となります。また、ここから数字列だけを取り 出すには「先頭に続く非数字」を除去します。 「先頭に続く非数字」は「^\D+」です。 正規表現の構文は以下を参照してください。 http://msdn.microsoft.com/ja-jp/library/ae5bf541(VS.80).aspx <!--移動用フォーム--> <FORM ID="F"></FORM> <SCRIPT LANGUAGE="JavaScript"> function conv(urltext) {     //最後のスラッシュまでを除去する     var t = urltext.replace(/.*\//,"");     //上記から先頭に続く非数字を除去する     var n = t.replace(/^\D+/,"");     //移動用フォームにURLを仕込む     var f = document.getElementById("F");     f.action = "http://www." + n + ".com/" + t + ".txt";     //Eventを作る     var e = document.createEvent("Event");     //Eventを初期化する     e.initEvent("submit",false,true);     //Eventを発生させる     f.dispatchEvent(e); } </SCRIPT> 指定URLを開く方法は他にもありますが、FireFox5.0で 動作確認してあります。OPERAは未確認です。 IEではエラーになります。

hs_w1
質問者

お礼

お礼が遅くなり申し訳ないです ありがとうございました^^

関連するQ&A