[正規表現]の検索結果


掲示板などのスレッドやコメント欄に投稿されたYouTube動画のURLを埋め込みコードに変換する方法を、 ネットで検索していろいろ調べましたが、YouTube動画のURLは、http://www.youtube.com/watch?v={VID}とhttp://youtu.be/{VID}という 2種類の形式があるようで、イマイチうまくいきませんでした。

結局、以下のコードで埋め込みコードへの変換は出来ましたが、改良の余地がまだかなりありそうです。

sub _url_convert {
    my $str = shift;

    if ($str =~ m/http:\/\/www\.youtube\.com\/watch\?v=([a-zA-Z0-9]+).*/i) {
        my $vid = $1;
        $str =~ s/(http:\/\/www\.youtube\.com\/watch.*)/<iframe width="480" height="360" src="http:\/\/www.youtube.com\/embed\/$vid?rel=0" frameborder="0" allowfullscreen><\/iframe>/g;
    }
    elsif ($str =~ m/http:\/\/youtu\.be\/([-_a-zA-Z0-9]+)/i) {
        my $vid = $1;
        $str =~ s/(http:\/\/youtu\.be\/[-_a-zA-Z0-9]+)/<iframe width="480" height="360" src="http:\/\/www.youtube.com\/embed\/$vid?rel=0" frameborder="0" allowfullscreen><\/iframe>/g;
    }

    return $str;
}

正規表現クックブック
オライリージャパン 著者:Jan Goyvaerts,Steven Levithan


amazon.co.jpのカスタマーレビューを見る
powered by amalink


[2316] Posted by kagahiro at 2013/06/22 01:35:47
0 point | Link (1) | Trackback (0) | Comment (0)

Rakudo.orgとPerl 6開発チームが、アーリーアダプター向けのPerl 6ディストリビューション「Rakudo Star July 2010 Release」を公開した。

Rakudo Starは、Perl 6の文法や正規表現、イントロスペクション、オブジェクトモデル、ジャンクションとオートスレッドなど多くの機能が搭載されたPerl 6の実装で、仮想マシン「Parrot Virtual Machine 2.6」やRakudo Perl 6コンパイラ、Perl 6の各種ドキュメントを含んでいる。

Perl 6実装「Rakudo Star」リリース
Rakudo.org
[1984] Posted by kagahiro at 2010/07/31 00:18:27
0 point | Link (0) | Trackback (0) | Comment (0)

コメント内のURLを自動的にリンクする処理の正規表現が、よく見るとかなり怪しかったの少し調べてみたのですが、それほど正確でなくてもいいと言うのであれば、

s?https?:\/\/[-_.!~*'()a-zA-Z0-9;\/?:\@&=+\$,%#]+

で良いみたいです。

なので、PerlでURLを自動的にリンクする処理は以下のような感じになります。

my $pattern = "s?https?://[-_.!~*'()a-zA-Z0-9;/?:@&=+$,%#]+";
$text =~ s/($pattern)/<a href="$1">$1<\/a>/g;

ちなみに、正確なhttp URL の正規表現はこうらしい。

my $digit = q{[0-9]};
my $upalpha = q{[A-Z]};
my $lowalpha = q{[a-z]};
my $alpha = qq{(?:$lowalpha|$upalpha)};
my $alphanum = qq{(?:$alpha|$digit)};
my $hex = qq{(?:$digit|[A-Fa-f])};
my $escaped = qq{%$hex$hex};
my $mark = q{[-_.!~*'()]};
my $unreserved = qq{(?:$alphanum|$mark)};
my $reserved = q{[;/?:@&=+$,]};
my $uric = qq{(?:$reserved|$unreserved|$escaped)};
my $query = qq{$uric*};
my $pchar = qq{(?:$unreserved|$escaped|} . q{[:@&=+$,])};
my $param = qq{$pchar*};
my $segment = qq{$pchar*(?:;$param)*};
my $path_segments = qq{$segment(?:/$segment)*};
my $abs_path = qq{/$path_segments};
my $port = qq{$digit*};
my $IPv4address = qq{$digit+\\.$digit+\\.$digit+\\.$digit+};
my $toplabel = qq{(?:$alpha|$alpha(?:$alphanum|-)*$alphanum)};
my $domainlabel = qq{(?:$alphanum|$alphanum(?:$alphanum|-)*$alphanum)};
my $hostname = qq{(?:$domainlabel\\.)*$toplabel\\.?};
my $host = qq{(?:$hostname|$IPv4address)};
my $http_URL = qq{http://$host(?::$port)?(?:$abs_path(?:\\?$query)?)?};
my $pattern = $http_URL;

ぐはっ!

http://www.din.or.jp/~ohzaki/perl.htm#httpURL
[1792] Posted by kagahiro at 2010/03/22 14:48:13
0 point | Link (2) | Trackback (0) | Comment (0)

「RE2」は、動作が高速で「スレッドフレンドリー」な正規表現ライブラリ。ライセンスはNew BSD License。PerlやPCRE(Perl Compatible Regular Expressions)の正規表現のほとんどに対応している。正規表現ライブラリ...
[1782] Posted by kagahiro at 2010/03/16 17:00:33
0 point | Link (0) | Trackback (0) | Comment (0)

新プログラミング環境C#がわかる+使えるC#をどのように利用するべきかを、言語仕様のトピックごとに詳細に解説。C#によるプログラミングWindows 上Windowsフォーム(Windows.Forms)を有効活用するノウハウを詳解。上巻...
[744] Posted by kagahiro at 2006/07/13 04:00:29
0 point | Link (1) | Trackback (0) | Comment (0)

プログラミング言語「perl」の入門書や解説書です。初めてのperlperlの各種機能や言語仕様の基礎をていねいに解説した入門書。正規表現の解説の拡充など、perl学習者の実際的なニーズを取り上げた1998年刊に次ぐ第3版...
[694] Posted by kagahiro at 2006/06/29 01:48:18
0 point | Link (6) | Trackback (0) | Comment (0)

基本から学ぶソフトウェアテスト―テストの「プロ」を目指す人のために市販ソフトウェアや一般の業務用ソフトウェアをテストする技術の入門書。基本から、テスト技術の各論、テストプロジェクトやテストチームの管理...
[682] Posted by kagahiro at 2006/06/27 22:10:01
0 point | Link (1) | Trackback (0) | Comment (0)

一番やさしいJSP&サーブレット入門塾Web DBアプリケーション開発に不可欠なJSP、サーブレット、JavaBeansの入門書。JSPハンドブックJSPの環境設定や実用サンプル、オブジェクトリファレンス、また周辺のデータベース...
[651] Posted by kagahiro at 2006/06/21 02:26:24
0 point | Link (4) | Trackback (0) | Comment (0)

  1  


アクセスランキング

今日のアクセスランキング TOP 10

  1. FC2まとめ (4 PV)
  2. Twitter Lite - 起動時や利用時の読み込み速度が最大30%アップ (3 PV)
  3. 2ちゃんねる(2ch) (3 PV)
  4. 大人気のブランド品即時買取サービス「CASH」がDMM.comにたったの70億円で買い叩かれる (2 PV)
  5. 無料ダイヤルアッププロバイダ「Soloot(ソルート)」 (2 PV)
  6. ほしい物リスト (2 PV)
  7. SQLのSELECT文で先頭から上位(TOP)10件のレコードを取得する方法(SQL Server、Oracle、MySQL、PostgreSQL) (2 PV)
  8. 掲示板CGI ThreadPlus 1.2 のリリース (2 PV)
  9. RDB(リレーショナルデータベース) (2 PV)
  10. 入金0円ですぐにFXが始められる初心者におすすめの海外FXブローカー「XM」 #MT4 #MT5 #口座開設 (2 PV)

今月のアクセスランキング TOP 10

  1. FC2まとめ (12 PV)
  2. 将棋ウォーズPCブラウザ版がchrome、Firefox、edgeなどに対応 (8 PV)
  3. 掲示板CGI ThreadPlus 1.2 のリリース (5 PV)
  4. 「Kindle for the Web」 (5 PV)
  5. SQLのSELECT文で先頭から上位(TOP)10件のレコードを取得する方法(SQL Server、Oracle、MySQL、PostgreSQL) (5 PV)
  6. Jipanguの配布は終了しました (4 PV)
  7. [FX]裁量ポジションを簡単に管理できるMT4向け無料の裁量補助EA「PositionKeeper」 (4 PV)
  8. Twitter Lite - 起動時や利用時の読み込み速度が最大30%アップ (3 PV)
  9. 「さくらのクラウド」のオプションサービスで「専有ホスト」の提供を開始 (3 PV)
  10. ドル円(USDJPY)で爆益を狙うハイリスクハイリターンのMT4向けナンピンマーチンEA「Hyper Dollar」 (3 PV)

アクセス統計

ディレクトリ

関連サイト