ニコニコ動画のURLリンクから外部プレイヤーのスクリプトに正規表現で置換する

公開日: : 最終更新日:2014/08/14 JavaScript/jQuery, PHP, サイト制作, ニコニコ動画

スポンサーリンク

ニコニコ動画の動画のアドレスを抽出して外部プレイヤー貼りつけソースのスクリプトに変換するソースです。PHPとjavascriptの場合を用意しましたが、それぞれpreg_replae関数とreplaceメソッドを使って(h)ttp://から始まる動画アドレスを正規表現で外部プレイヤーのスクリプトに変換しているだけです。

PHPの場合

$desc = '私のお勧めの動画は<br>http://www.nicovideo.jp/watch/sm1359820<br>や<br>ttp://www.nicovideo.jp/watch/sm15172108<br>の動画です<br>';

//正規表現で置換する
$replaced = preg_replace("/h?ttp:\/\/www\.nicovideo\.jp\/watch\/(\w{0,2}[0-9]+)/",'<script type="text/javascript" src="http://ext.nicovideo.jp/thumb_watch/\\1"></script><noscript><a href="http://www.nicovideo.jp/watch/\\1"></a></noscript>',$desc);

echo $replaced;

javascriptの場合

var desc = '私のお勧めの動画は<br>http://www.nicovideo.jp/watch/sm1359820<br>や
<br>ttp://www.nicovideo.jp/watch/sm15172108<br>の動画です<br>';

//正規表現で置換する
desc = desc.replace(/h?ttp:\/\/www\.nicovideo\.jp\/watch\/(\w{0,2}[0-9]+)/g,"<scr"+"ipt type=\"text/javascript\" src=\"http://ext.nicovideo.jp/thumb_watch/$1\"></scr"+"ipt><nosc"+"ript><a href=\"http://www.nicovideo.jp/watch/$1\">http://www.nicovideo.jp/watch/$1</a></nosc"+"ript>");

document.write(desc);

タグと間違われる場合があるのでscriptの文字は適当に分割しました。
javascriptによるデモはこちら↓

ちなみにYoutube版の置換はこちら
この置換を一括で行えるデモ

ニコニコムービーメーカー(動画) 通常版
インターネット (2009-02-20)
売り上げランキング: 2,661
スポンサーリンク
Amazon
  • このエントリーをはてなブックマークに追加

関連記事

【PHP】file_get_contentsでリンク元などのヘッダ情報を変更する

file_get_contentsで他サイトの情報を読み取る際などでリンク元を明記したい場合は以下の

記事を読む

AmazonのランキングRSSから画像リンクを作る

Amazon RSS Amazonでいい感じのRSSが無いかと探していたのですが実は本家に素晴らし

記事を読む

【jQuery/javascript】Tweetボタンを動的に設置する

Twitterボタンをブログやサイトに設置するとき読み込みに時間がかかってしまって困るといったことや

記事を読む

【jQuery】hasClass is not a functionエラー

jQueryでセレクタを使って取得してきたjQueryオブジェクトからその子要素をchildrenで

記事を読む

【PostgreSQL】psql version 8.4, server version 9.5

PostgreSQLを使おうとしたところ下記のような警告が出てきました。 -bash-4.1$

記事を読む

javascriptで画像処理をする【HTML5】

HTML5でjavascriptを使って画像処理をしてみました。このページでは手始めにグレースケール

記事を読む

Canvasの画像をリサイズする簡単な方法【HTML5・javascript】

調べてみるとCanvasをリサイズするようなjavascriptの関数は存在しないようなので自前で作

記事を読む

チェスボード画像自動生成ツール

1マスのサイズ(ピクセル) マスの数× 左上が白 枠をつけるか 枠の色白黒

記事を読む

jQueryにおけるcreateElement

jQueryでcreateElementに変わる関数は単純で、例えばvar dom = docume

記事を読む

【PHP】ミリ秒を取得することで制限時間を設けて処理をする

PHPで時間制限を設けてタイマーのような処理をするときの制限の付け方として、処理のはじめの時刻と処理

記事を読む

NVIDIA DIGITSをSupervisorを使って自動起動する

はじめに 先日Ubuntu14.04にDIGITS 5をGPUなしP

【2017年度】GeForce 1080 Ti搭載BTOパソコン比較

はじめに 最近ディープラーニング用にGPUのないPCにDIGITSを

Windows用のシンプルなストップウォッチソフト紹介

Windows(10)でも使える使いやすいKAZAMITimerという

MNISTをDIGITS 5のCPUのみで試す(GPUなし)

はじめに DIGITSを使えばGUI操作で簡単にディープラーニングが

Windowsユーザが初めてMacBookを購入したときの注意点や感想

最近12インチのMacBookを購入しました。今までWindowsしか

Redmine3.2をUbuntu14.04にインストールして躓いた所についてメモ

はじめに Ubuntu14.04 ServerにRedmine3.2

UWSCを使ったソフト自動立ち上げ【SoftEther VPN Server】

やりたいこと 最近SoftEtherという筑波大学発のベンチャー企業

→もっと見る

  • Author : ががんぼ
    プログラミングやWeb関係で気付いたことについてメモしていく予定。だいたいが備忘録ですが、自分でサンプルを作って動かしてみたりしています。
PAGE TOP ↑