ニコニコ動画の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
  • このエントリーをはてなブックマークに追加

関連記事

お名前.comのでサブドメインを取得してロリポップで使う方法

タイトルどおりなのですがお名前.comで取得した独自ドメインからサブドメインを取得し、ロリポップで使

記事を読む

ニコニコ動画のRSSをjavascriptで読み込んで表示させる

ニコニコ動画のランキングRSSをjQueryで読み込んで表示するプログラムを作成しました。RSSの読

記事を読む

関連記事を表示させるブログパーツOutbrainの導入方法

関連記事を表示させるブログパーツOutbrainの紹介です。 このOutbrainの長所は

記事を読む

スクレイピングをサポートしてくれるAPI【kimono】

kimonoというスクレイピングをAPI化してくれるという素晴らしいサービスがあります。

記事を読む

【TwitterOauth】特定のつぶやきを取得してリツイート数順やランダム順にする【PHP】

TwitterOauthを利用して特定のワードをつぶやいたデータを取得してそれをリツイート順なりに並

記事を読む

【HTML/jQuery UI】NumericUpDownを設置する【Spinner】

HTMLタグにNumericUpDownがないか探したのですがないみたいなのでそれが使えるようなもの

記事を読む

jQueryにおけるcreateElement

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

記事を読む

【PHP】dateで指定日前の日付を出力する

指定日前の日付の取得方法 date_default_timezone_set('Asia/

記事を読む

WordPressの記事内でJavaScriptを動かす

WordPressでは厄介なことにJavaScriptが動かない場合があります。この記事では動かない

記事を読む

jQueryで要素にappendとafterを使って追加する

jqueryのappendは要素の末尾に指定要素を追加し、afterは要素の後に指定要素を加えます。

記事を読む

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 ↑